AbstractLauncherApplication.st
author Stefan Vogel <sv@exept.de>
Sat, 01 Oct 2016 20:40:54 +0200
changeset 16886 ac4a7157be95
parent 16756 673316b94fbb
child 16888 a285b73d0ef0
child 17132 17d361c666c2
permissions -rw-r--r--
#REFACTORING by stefan Use #() instead of Array new and #[] instead of ByteArray new
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
16886
ac4a7157be95 #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 16756
diff changeset
     1
"{ Encoding: utf8 }"
ac4a7157be95 #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 16756
diff changeset
     2
2195
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
     3
"
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
     4
 COPYRIGHT (c) 1997 by eXept Software AG
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
     5
              All Rights Reserved
2195
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
     6
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
     7
 This software is furnished under a license and may be used
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
     8
 only in accordance with the terms of that license and with the
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
     9
 inclusion of the above copyright notice. This software may not
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    10
 be provided or otherwise made available to, or used by, any
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    11
 other person. No title to or ownership of the software is
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    12
 hereby transferred.
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    13
"
2689
602cbcd0feb3 Fix comment on oldSpace compress limit
Stefan Vogel <sv@exept.de>
parents: 2621
diff changeset
    14
"{ Package: 'stx:libtool' }"
602cbcd0feb3 Fix comment on oldSpace compress limit
Stefan Vogel <sv@exept.de>
parents: 2621
diff changeset
    15
15236
92e7ef5d694e class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14943
diff changeset
    16
"{ NameSpace: Smalltalk }"
92e7ef5d694e class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14943
diff changeset
    17
7455
9003f35c3458 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7439
diff changeset
    18
ToolApplicationModel subclass:#AbstractLauncherApplication
10907
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
    19
	instanceVariableNames:'transcript'
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
    20
	classVariableNames:'NotifyingEmergencyHandler OpenLaunchers RegisteredMenuHandlers
13882
212877cb97bf merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13761
diff changeset
    21
		OpenSettingsDialog SettingsList UserSettingsList
212877cb97bf merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13761
diff changeset
    22
		LastSettingsPageName'
10907
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
    23
	poolDictionaries:''
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
    24
	category:'Interface-Smalltalk'
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    26
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    27
Object subclass:#LauncherDialogs
10907
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
    28
	instanceVariableNames:''
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
    29
	classVariableNames:''
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
    30
	poolDictionaries:''
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
    31
	privateIn:AbstractLauncherApplication
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    32
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    33
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    34
ApplicationModel subclass:#PackageLoadDialog
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    35
	instanceVariableNames:'hierarchicalListView packageIdByItem pathByItem packageDirPath
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    36
		packageIcon greyPackageIcon folderIcon greyFolderIcon
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    37
		alreadyLoadedString applicationIcon greyApplicationIcon root
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    38
		itemsByPath getItemByPath myHierarchicalItemWithLabelAndIcon
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    39
		filterHolder masterRoot infoTextHolder loadButton
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
    40
		loadAndBrowseButton selectedPackageHolder monticelloRoot
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
    41
		backgroundPackageFindProcess'
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    42
	classVariableNames:'PreviousPackageDialogItems PreviousPackageDialogExtent'
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    43
	poolDictionaries:''
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    44
	privateIn:AbstractLauncherApplication
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    45
!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    46
2195
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    47
!AbstractLauncherApplication class methodsFor:'documentation'!
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    48
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    49
copyright
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    50
"
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    51
 COPYRIGHT (c) 1997 by eXept Software AG
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
    52
              All Rights Reserved
2195
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
 This software is furnished under a license and may be used
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    55
 only in accordance with the terms of that license and with the
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    56
 inclusion of the above copyright notice. This software may not
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    57
 be provided or otherwise made available to, or used by, any
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    58
 other person. No title to or ownership of the software is
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    59
 hereby transferred.
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    60
"
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    61
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    62
!
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    63
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    64
documentation
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
    This is an abstract class, providing mechanisms and common functionality
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    67
    for launcher-type applications. Subclasses may implement their GUI either
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    68
    with or without the UIPainter framework, and still use the common functions
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    69
    provided here.
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
    [author:]
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
    72
        Claus Gittinger, eXept Software AG
2195
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    73
"
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    74
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
! !
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    77
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    78
!AbstractLauncherApplication class methodsFor:'accessing'!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    79
2761
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    80
closeAllLaunchers
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    81
    "close all opened launchers"
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    82
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    83
    self openLaunchers copy do:[:eachLauncher |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
    84
        eachLauncher closeRequest
2761
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    85
    ].
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    86
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 closeAllLaunchers.
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    89
     NewLauncher open
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
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    93
current
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    94
    "return the launcher running on the current screen.
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    95
     (for access via addMenu/ removeMenu)"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    96
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    97
    |currentScreen|
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    98
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    99
    OpenLaunchers size > 0 ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   100
        currentScreen := Screen current.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   101
        ^ OpenLaunchers detect:[:eachLauncher | eachLauncher graphicsDevice == currentScreen] ifNone:nil
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   102
    ].
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   103
    ^ nil.
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   104
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   105
    "
2761
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
   106
     NewLauncher current
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
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   109
    "Modified: / 9.9.1996 / 22:41:36 / stefan"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   110
    "Modified: / 13.10.1998 / 16:09:50 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   111
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   112
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   113
openLaunchers
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   114
    "return all opened launchers"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   115
3079
9e8b81438edb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3078
diff changeset
   116
    OpenLaunchers isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   117
        OpenLaunchers := IdentitySet new
3079
9e8b81438edb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3078
diff changeset
   118
    ].
9e8b81438edb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3078
diff changeset
   119
    ^ OpenLaunchers
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   120
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   121
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   122
!AbstractLauncherApplication class methodsFor:'defaults'!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   123
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   124
notifyingEmergencyHandler
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   125
    "return a block (used as an emergency handler
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   126
     for exceptions), which does errorNotification before going
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   127
     into the debugger."
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   128
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   129
    "Remember the handlerBlock, to be able to determine if the current
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   130
     handler is the notifying one."
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   131
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   132
    NotifyingEmergencyHandler isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   133
        NotifyingEmergencyHandler := NoHandlerError notifyingEmergencyHandler
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   134
    ].
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   135
    ^ NotifyingEmergencyHandler
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   136
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   137
    "Created: 7.1.1997 / 22:18:19 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   138
    "Modified: 15.1.1997 / 21:15:38 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   139
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   140
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   141
!AbstractLauncherApplication class methodsFor:'image specs'!
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   142
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   143
communicationIcon
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   144
    "This resource specification was automatically generated
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   145
     by the ImageEditor of ST/X."
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   146
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   147
    "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
   148
     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
   149
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   150
    "
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   151
     self communicationIcon inspect
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   152
     ImageEditor openOnClass:self andSelector:#communicationIcon
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   153
     Icon flushCachedIcons
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
    <resource: #image>
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   157
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   158
    ^Icon
15763
87b7752ddde1 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15700
diff changeset
   159
        constantNamed:'AbstractLauncherApplication communicationIcon'
87b7752ddde1 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15700
diff changeset
   160
        ifAbsentPut:[(Depth4Image width:22 height:22) bits:(ByteArray fromPackedString:'
87b7752ddde1 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15700
diff changeset
   161
@@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
   162
;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
   163
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
   164
!
9e11f7a0936e change the settingsApplication list
penk
parents: 4385
diff changeset
   165
9805
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   166
cross2Icon
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   167
    "This resource specification was automatically generated
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   168
     by the ImageEditor of ST/X."
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   169
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   170
    "Do not manually edit this!! If it is corrupted,
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   171
     the ImageEditor may not be able to read the specification."
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   172
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   173
    "
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   174
     self cross2Icon inspect
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   175
     ImageEditor openOnClass:self andSelector:#cross2Icon
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   176
     Icon flushCachedIcons
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
    <resource: #image>
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   180
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   181
    ^Icon
15763
87b7752ddde1 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15700
diff changeset
   182
        constantNamed:'AbstractLauncherApplication cross2Icon'
87b7752ddde1 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15700
diff changeset
   183
        ifAbsentPut:[(Depth1Image width:32 height:32) bits:(ByteArray fromPackedString:'
9806
80452f6ab4f6 changed: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9805
diff changeset
   184
@@@@@@@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
   185
@ @@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
   186
@@_@@@@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
   187
 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
   188
!
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   189
4893
39dec723f6ad *** empty log message ***
penk
parents: 4879
diff changeset
   190
httpServerIcon
6346
3b3d962e691c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6264
diff changeset
   191
    <resource: #programImage>
3b3d962e691c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6264
diff changeset
   192
3b3d962e691c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6264
diff changeset
   193
    ^ AbstractSettingsApplication::HTTPStartServerSettingsApplication defaultIcon
4893
39dec723f6ad *** empty log message ***
penk
parents: 4879
diff changeset
   194
!
39dec723f6ad *** empty log message ***
penk
parents: 4879
diff changeset
   195
39dec723f6ad *** empty log message ***
penk
parents: 4879
diff changeset
   196
systemBrowser24x24Icon
6346
3b3d962e691c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6264
diff changeset
   197
    <resource: #programImage>
3b3d962e691c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6264
diff changeset
   198
4893
39dec723f6ad *** empty log message ***
penk
parents: 4879
diff changeset
   199
    ^ ToolbarIconLibrary systemBrowser24x24Icon
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   200
! !
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   201
2195
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   202
!AbstractLauncherApplication class methodsFor:'queries'!
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   203
15946
ead61a2c0869 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 15925
diff changeset
   204
isAbstract
ead61a2c0869 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 15925
diff changeset
   205
    ^ self == AbstractLauncherApplication
2195
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   206
! !
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   207
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   208
!AbstractLauncherApplication class methodsFor:'settings application list'!
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   209
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   210
addSettingsApplicationByClass:aClass withName:aName icon:anIcon
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   211
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   212
    | userSetList addItem|
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   213
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   214
    userSetList := self userSettingsList.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   215
    addItem := Array with:aName with:aClass with:anIcon.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   216
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   217
    "Ignore existing entries found in SettingsList for that name"
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   218
    (SettingsList ? #()) do:[:entry |
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   219
        entry first = aName ifTrue: [
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   220
            ('Settings named "%1" already exists in "%2" with settings app class "%3"' 
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   221
                bindWith:aName
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   222
                    with:self name printString
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   223
                    with:entry second
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   224
            ) infoPrintCR.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   225
            ^ self
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   226
        ].    
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   227
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   228
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   229
    "/ remove existing entries in UserSettingsList for that name
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   230
    userSetList copy do:[:entry |
4704
a2ec1833538e *** empty log message ***
penk
parents: 4641
diff changeset
   231
        entry first = aName ifTrue:[
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   232
            userSetList remove:entry.
4704
a2ec1833538e *** empty log message ***
penk
parents: 4641
diff changeset
   233
        ]
a2ec1833538e *** empty log message ***
penk
parents: 4641
diff changeset
   234
    ].
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   235
    userSetList add:addItem.
4436
858e6ff50df1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 4429
diff changeset
   236
    OpenSettingsDialog notNil ifTrue:[
4893
39dec723f6ad *** empty log message ***
penk
parents: 4879
diff changeset
   237
        OpenSettingsDialog installSettingsEntry:addItem
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   238
    ].
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   239
!
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   240
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   241
allSettingsList
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   242
    ^ self settingsList, self userSettingsList
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   243
!
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   244
5423
884569242087 defaultSettingsList moved from SettingsDialog to Launcher
Claus Gittinger <cg@exept.de>
parents: 5410
diff changeset
   245
defaultSettingsApplicationList
8622
0c50929cb6ec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8612
diff changeset
   246
    "/ 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
   247
    "/ left here for backw. compatibility.
9137
d252e24bd64b window settings splitted; lower window settings added
Claus Gittinger <cg@exept.de>
parents: 9084
diff changeset
   248
8622
0c50929cb6ec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8612
diff changeset
   249
    ^ SettingsDialog defaultSettingsApplicationList
5423
884569242087 defaultSettingsList moved from SettingsDialog to Launcher
Claus Gittinger <cg@exept.de>
parents: 5410
diff changeset
   250
!
884569242087 defaultSettingsList moved from SettingsDialog to Launcher
Claus Gittinger <cg@exept.de>
parents: 5410
diff changeset
   251
15352
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   252
expandSettingsList:rawList
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   253
    "this expands a raw settings list,
15355
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   254
     by looking for entries with a block in their class name.
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   255
     If any such is present, it is evaluated, returning
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   256
     a collection of actual entries to use. Then, also % entries in
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   257
     the name and icon are evaluated by sending corresponding messages
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   258
     to the collected classes.
15352
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   259
     This allows for easy dynamic construction of more complicated
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   260
     lists, for example to adapt to the set of loaded classes dynamically."
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   261
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   262
    "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
   263
     Smalltalk's dynamic features, it is probably better done differently
15355
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   264
     (letting the caller do this).
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   265
     The code here is harder to debug, and understand"
15352
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
    |cookedList settingsList|
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   268
9860
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   269
    cookedList := OrderedCollection new.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   270
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   271
    rawList do:[:eachEntry|
15355
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   272
        |treeName classNameOrBlock newEntry code classList name nameCode nameBlock nameList iconCode iconBlock|
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   273
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   274
        classNameOrBlock := eachEntry at:2 ifAbsent:nil.
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   275
        classNameOrBlock isBlock ifTrue:[
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   276
            classList := classNameOrBlock value select:[:clsOrNil | clsOrNil notNil].
9860
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   277
            name := eachEntry at:1.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   278
            self assert:(name includesString:'[').
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   279
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   280
            nameCode := name copyFrom:(name indexOf:$[)+1 to:(name indexOf:$])-1.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   281
            nameCode := '^ [:each | ' , (nameCode copyReplaceString:'%' withString:'each') ,']'.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   282
            nameBlock := Parser evaluate:nameCode.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   283
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   284
            nameList := classList collect:nameBlock.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   285
            nameList sortWith:classList.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   286
            nameList with:classList do:[:eachName :eachClass |
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   287
                |newEntry|
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
                newEntry := eachEntry copy.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   290
                newEntry at:1 put:(name copyTo:(name indexOf:$[)-1),eachName.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   291
                newEntry at:2 put:eachClass name.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   292
                cookedList add: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
        ] ifFalse:[
15355
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   295
            (classNameOrBlock isNil "a directory entry"
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   296
            or:[ (Smalltalk at:classNameOrBlock) notNil "a valid entry"]) ifTrue:[
9860
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   297
                cookedList add:eachEntry.
14475
724159baf6af class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14459
diff changeset
   298
            ] ifFalse:[
15355
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   299
                classNameOrBlock notNil ifTrue:[
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   300
                    Transcript showCR:'Launcher: missing settings class: ',classNameOrBlock.
14475
724159baf6af class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14459
diff changeset
   301
                ].
9860
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   302
            ].
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   303
        ].
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   304
    ].
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   305
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   306
    settingsList := 
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   307
        cookedList collect:[:eachEntry |
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   308
            |iconCodeOrSelector iconCode iconBlock newEntry|
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
            iconCodeOrSelector := eachEntry at:3 ifAbsent:nil.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   311
            iconCodeOrSelector isNil ifTrue:[
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   312
                newEntry := eachEntry
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   313
            ] ifFalse:[
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   314
                newEntry := eachEntry copy.
16107
8e8e7dc3035d #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16096
diff changeset
   315
                (iconCodeOrSelector startsWith:$[) ifTrue:[
9860
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   316
                    iconCode := iconCodeOrSelector copyFrom:(iconCodeOrSelector indexOf:$[)+1 to:(iconCodeOrSelector indexOf:$])-1.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   317
                    iconCode := '^ [:each | ' , (iconCode copyReplaceString:'%' withString:'each') ,']'.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   318
                    iconBlock := Parser evaluate:iconCode.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   319
                    newEntry at:3 put:(iconBlock value:(Smalltalk classNamed:(eachEntry at:2))).
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   320
                ] ifFalse:[
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   321
                    newEntry at:3 put:(self perform:iconCodeOrSelector).
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   322
                ].
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   323
            ].
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   324
            newEntry.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   325
        ].
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   326
9188
2ee7d25e44cc do NOT cache the settings list
Claus Gittinger <cg@exept.de>
parents: 9165
diff changeset
   327
    ^ settingsList.
8761
993414b0b0f1 keep settingsList in an instance class variable
fm
parents: 8680
diff changeset
   328
993414b0b0f1 keep settingsList in an instance class variable
fm
parents: 8680
diff changeset
   329
    "
9137
d252e24bd64b window settings splitted; lower window settings added
Claus Gittinger <cg@exept.de>
parents: 9084
diff changeset
   330
     self withAllSubclassesDo:[:cls | cls initializeSettingsList ]
8761
993414b0b0f1 keep settingsList in an instance class variable
fm
parents: 8680
diff changeset
   331
    "
15352
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   332
!
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   333
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   334
initializeSettingsList
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   335
    SettingsList := self expandSettingsList:(self defaultSettingsApplicationList).
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   336
    ^ SettingsList.
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
     self withAllSubclassesDo:[:cls | cls initializeSettingsList ]
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   340
    "
8761
993414b0b0f1 keep settingsList in an instance class variable
fm
parents: 8680
diff changeset
   341
993414b0b0f1 keep settingsList in an instance class variable
fm
parents: 8680
diff changeset
   342
    "Modified: / 16-12-2002 / 18:12:50 / penk"
9875
062f2c80dff0 changed: #initializeSettingsList
Claus Gittinger <cg@exept.de>
parents: 9860
diff changeset
   343
    "Modified: / 20-04-2011 / 17:03:33 / cg"
8761
993414b0b0f1 keep settingsList in an instance class variable
fm
parents: 8680
diff changeset
   344
!
993414b0b0f1 keep settingsList in an instance class variable
fm
parents: 8680
diff changeset
   345
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   346
removeSettingsApplicationByClass:aClass
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   347
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   348
    | userSetList remItem|
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   349
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   350
    userSetList := self userSettingsList.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   351
    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
   352
    remItem notNil ifTrue:[
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   353
        userSetList remove:remItem.
4436
858e6ff50df1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 4429
diff changeset
   354
        OpenSettingsDialog notNil ifTrue:[
858e6ff50df1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 4429
diff changeset
   355
            self removeSettingsEntry:remItem forSettingsApp:OpenSettingsDialog.
4386
9e11f7a0936e change the settingsApplication list
penk
parents: 4385
diff changeset
   356
        ].
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   357
    ].
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   358
!
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   359
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   360
removeSettingsEntry:entry forSettingsApp:aSettingsApp
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   361
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   362
    |applName applClass|
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
    applName := entry at:1.
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   365
    applClass := entry at:2.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   366
    aSettingsApp remApplClassByName:applName.
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   367
!
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
settingsList
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   370
    "/ do NOT cache SettingsList
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   371
    "/ use UserSettingsList to add settings from loaded libraries
9860
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   372
9188
2ee7d25e44cc do NOT cache the settings list
Claus Gittinger <cg@exept.de>
parents: 9165
diff changeset
   373
    SettingsList := nil.
2ee7d25e44cc do NOT cache the settings list
Claus Gittinger <cg@exept.de>
parents: 9165
diff changeset
   374
    SettingsList isNil ifTrue: [
2ee7d25e44cc do NOT cache the settings list
Claus Gittinger <cg@exept.de>
parents: 9165
diff changeset
   375
        SettingsList := self initializeSettingsList
2ee7d25e44cc do NOT cache the settings list
Claus Gittinger <cg@exept.de>
parents: 9165
diff changeset
   376
    ].
9137
d252e24bd64b window settings splitted; lower window settings added
Claus Gittinger <cg@exept.de>
parents: 9084
diff changeset
   377
    ^ SettingsList
9860
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   378
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   379
    "Modified: / 19-04-2011 / 12:08:17 / cg"
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   380
!
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   381
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   382
userSettingsList
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   383
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   384
    UserSettingsList isNil ifTrue: [
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   385
        UserSettingsList := OrderedCollection new.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   386
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   387
    ^ UserSettingsList
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   388
! !
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   389
14752
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   390
!AbstractLauncherApplication class methodsFor:'settings dialog'!
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   391
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   392
openSettings
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   393
    ^ self openSettingsFor: nil
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   394
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   395
    "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
   396
!
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   397
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   398
openSettingsAndSelect: selectedPageName
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   399
    ^ self openSettingsFor: nil andSelect: selectedPageName
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   400
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   401
    "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
   402
!
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   403
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   404
openSettingsFor: requestor
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   405
    ^ self openSettingsFor: requestor andSelect: LastSettingsPageName
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   406
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   407
    "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
   408
!
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   409
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   410
openSettingsFor: requestor andSelect: selectedPageName
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   411
    |settingsApp wg proc|
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   412
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   413
    OpenSettingsDialog notNil ifTrue:[
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   414
        (wg := OpenSettingsDialog windowGroup) notNil ifTrue:[
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   415
            (proc := wg process) notNil ifTrue:[
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   416
                proc isDead ifFalse:[
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   417
                    OpenSettingsDialog window raiseDeiconified.
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   418
                    ^ self.
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   419
                ]
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   420
            ]
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   421
        ].
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   422
        OpenSettingsDialog := nil.
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   423
    ].
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
    settingsApp := SettingsDialog new.
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   426
    settingsApp requestor:requestor.
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   427
    settingsApp installSettingsEntries:(self allSettingsList).
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   428
    "/ settingsApp requestor:self.
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   429
    OpenSettingsDialog := settingsApp.
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   430
    settingsApp allButOpen.
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   431
    settingsApp window label:(self classResources string:'ST/X Settings').
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   432
    settingsApp openWindow.
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   433
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   434
    selectedPageName notNil ifTrue:[
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   435
        settingsApp selectItemWithName:selectedPageName
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   436
    ].
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   437
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   438
    "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
   439
! !
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   440
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   441
!AbstractLauncherApplication class methodsFor:'utilities'!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   442
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   443
openLoadPackageDialog
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   444
    "open a dialog showing wellknown packages (listed in the packages directory)
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   445
     and offer to load the selected one(s).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   446
     TODO: make this a little app instead of an ad-hoc dialog, 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   447
     add remote packages (central goody repository?)"    
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   448
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   449
    PackageLoadDialog open
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   450
! !
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   451
8381
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   452
!AbstractLauncherApplication methodsFor:'drag & drop'!
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   453
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   454
canDropObjects:aCollectionOfDropObjects
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   455
    "Any object can be dropped into workspace..."
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   456
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   457
    ^ aCollectionOfDropObjects
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   458
        contains:[:someObject| (someObject isTextObject or:[ someObject isFileObject ])].
8381
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   459
!
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   460
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   461
dropFileObject:aFilename
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   462
    |suffix|
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   463
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   464
    suffix := aFilename asFilename suffix.
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   465
    suffix = 'st' ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   466
        ChangesBrowser openOn:aFilename.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   467
        ^ self.
8381
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   468
    ].
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   469
    UserPreferences fileBrowserClass openOn:aFilename.
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   470
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   471
!
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   472
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   473
dropObjects:aCollectionOfObjects
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   474
    "Any object can be dropped:
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   475
        text: open a workspace
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   476
        file:
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   477
            .st - open a cange-browser
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   478
            other - open a fileBrowser
8381
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   479
    "
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   480
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   481
    aCollectionOfObjects do:[:dropObject|
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   482
        |theObject|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   483
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   484
        theObject := dropObject theObject.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   485
        dropObject isTextObject ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   486
            self dropTextObject:theObject
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   487
        ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   488
            dropObject isFileObject ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   489
                self dropFileObject:theObject
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   490
            ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   491
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   492
        ].
8381
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   493
    ].
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   494
!
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   495
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   496
dropTextObject:aDropContext
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   497
    WorkspaceApplication openWith:aDropContext.
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   498
! !
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   499
11870
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   500
!AbstractLauncherApplication methodsFor:'menu actions - tools'!
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   501
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   502
clearAllCoverageInfo
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   503
    "clear all coverage information"
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   504
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   505
    self withWaitCursorDo:[
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   506
        InstrumentedMethod cleanAllInfoWithChange:false
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   507
    ].
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   508
    Smalltalk changed:#coverageInfo.
11990
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
   509
!
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
   510
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
   511
startSUnitTestRunner2
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
   512
    "open the SUnit test runner"
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
   513
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
   514
    self openApplication:#Tools::TestRunner2
11870
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   515
! !
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   516
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   517
!AbstractLauncherApplication methodsFor:'oldStyle-user actions-settings'!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   518
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   519
communicationsSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   520
    "open a dialog on misc other settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   521
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   522
    self settingsDialog:[:handler | handler communicationsSettings]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   523
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   524
    "Modified: / 31.7.1998 / 22:46:56 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   525
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   526
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   527
compilerSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   528
    "open a dialog on compiler related settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   529
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   530
    self settingsDialog:[:handler | handler compilerSettings]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   531
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   532
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   533
displaySettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   534
    "open a dialog on display related settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   535
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   536
    self settingsDialog:[:handler | handler displaySettings]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   537
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   538
    "Modified: / 31.7.1998 / 22:45:38 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   539
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   540
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   541
editSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   542
    "open a dialog on edit settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   543
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   544
    self settingsDialog:[:handler | handler editSettings]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   545
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   546
    "Modified: / 31.7.1998 / 22:46:56 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   547
    "Created: / 6.1.1999 / 14:14:48 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   548
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   549
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   550
fontSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   551
    "open a dialog on font related settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   552
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   553
    self settingsDialog:[:handler | handler fontSettingsFor:self]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   554
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   555
    "Modified: / 31.7.1998 / 22:45:44 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   556
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   557
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   558
javaSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   559
    "open a dialog on java-subsystem related settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   560
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   561
    self settingsDialog:[:handler | handler javaSettings]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   562
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   563
    "Modified: / 31.7.1998 / 22:46:13 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   564
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   565
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   566
keyboardSetting
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   567
    "open a dialog on keyboard related settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   568
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   569
    self settingsDialog:[:handler | handler keyboardSettings]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   570
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   571
    "Modified: / 31.7.1998 / 22:45:56 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   572
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   573
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   574
languageSetting
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   575
    "open a dialog on language related settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   576
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   577
    self settingsDialog:[:handler | handler languageSettingsFor:self]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   578
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   579
    "Modified: / 31.7.1998 / 22:46:13 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   580
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   581
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   582
loadSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   583
    "restore settings from a settings-file."
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   584
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   585
    "a temporary kludge - we need a central systemSettings object for this,
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   586
     which can be saved/restored with a single store/read."
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   587
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   588
    |fileName|
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   589
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   590
    fileName := Dialog
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   591
        requestFileName:(resources string:'Load Settings From:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   592
        default:'settings.stx'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   593
        ok:(resources string:'Load')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   594
        abort:(resources string:'Cancel')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   595
        pattern:'*.stx'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   596
        fromDirectory:nil.
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   597
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   598
    fileName isEmptyOrNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   599
        "/ canceled
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   600
        ^ self
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   601
    ].
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   602
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   603
    self withWaitCursorDo:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   604
        Smalltalk fileIn:fileName.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   605
        self reOpen
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   606
    ].
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   607
!
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
memorySettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   610
    "open a dialog on objectMemory related settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   611
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   612
    self settingsDialog:[:handler | handler memorySettings]
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
    "Modified: / 31.7.1998 / 22:46:33 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   615
!
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
messageSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   618
    "open a dialog on infoMessage related settings"
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
    self settingsDialog:[:handler | handler messageSettings]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   621
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   622
    "Modified: / 31.7.1998 / 22:46:45 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   623
!
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
miscSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   626
    "open a dialog on misc other settings"
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
    self settingsDialog:[:handler | handler miscSettings]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   629
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   630
    "Modified: / 31.7.1998 / 22:46:56 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   631
!
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
printerSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   634
    "open a dialog on printer related settings"
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
    self settingsDialog:[:handler | handler printerSettings]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   637
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   638
    "Modified: / 31.7.1998 / 22:47:05 / cg"
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
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   641
saveSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   642
    "save settings to a settings-file."
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
    self settingsDialog:[:handler | handler saveSettings]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   645
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   646
    "Modified: / 31.7.1998 / 22:48:38 / cg"
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
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   649
settingsDialog:symbolOrBlock
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   650
    |handler|
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
    RegisteredMenuHandlers notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   653
        handler := RegisteredMenuHandlers at:symbolOrBlock ifAbsent:nil.
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   654
    ].
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   655
    handler isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   656
        handler := LauncherDialogs
7679
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
    symbolOrBlock isBlock ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   659
        symbolOrBlock value:handler
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   660
    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   661
        handler perform:symbolOrBlock with:self.
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   662
    ]
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
    "Modified: / 24-02-2007 / 09:40:48 / cg"
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
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   667
sourceAndDebuggerSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   668
    "open a dialog on misc other settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   669
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   670
    self settingsDialog:[:handler | handler sourceAndDebuggerSettings]
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
    "Modified: / 31.7.1998 / 22:47:21 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   673
!
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
toolSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   676
    "open a dialog on tool settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   677
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   678
    self settingsDialog:[:handler | handler toolSettings]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   680
    "Modified: / 31.7.1998 / 22:46:56 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   681
    "Created: / 13.10.1998 / 15:50:53 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   682
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   683
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   684
viewStyleSetting
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   685
    "open a dialog on viewStyle related settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   686
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   687
    self settingsDialog:[:handler | handler viewStyleSettingsFor:self]
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
    "Modified: / 31.7.1998 / 22:47:33 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   690
! !
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   691
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   692
!AbstractLauncherApplication methodsFor:'private'!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   693
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   694
allTopViewsAndLabelsSortedFilteringWindowGroups: windowGroupFilterOrNil
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   695
    "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
   696
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   697
    |knownTopViewsAndLabels|
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   698
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   699
    knownTopViewsAndLabels := OrderedCollection new.
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   700
    self allTopViewsFilteringWindowGroups: windowGroupFilterOrNil withLabelsDo: [:v :lbl |
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   701
        knownTopViewsAndLabels add:(lbl -> v)
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   702
    ].
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   703
    knownTopViewsAndLabels sort:[:a :b | a key < b key].
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   704
    ^ knownTopViewsAndLabels
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   705
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   706
    "Created: / 27-04-2012 / 13:04:21 / cg"
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   707
!
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   708
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   709
allTopViewsFilteringWindowGroups: windowGroupFilterOrNil withLabelsDo: aBlock
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   710
    "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
   711
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   712
    |knownTopViews genLabel|
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   713
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   714
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   715
    genLabel := [:v | 
12499
3f6769e6733c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12067
diff changeset
   716
                    |app appName busyOrNot iconifiedOrNot 
3f6769e6733c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12067
diff changeset
   717
                     sensor pending process|
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   718
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   719
                    app := v application.
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   720
                    appName := (app isNil 
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   721
                                    ifTrue:[''] 
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   722
                                    ifFalse:[app class nameWithoutPrefix,': ']).
11490
62451ecb3d3b changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11487
diff changeset
   723
                    busyOrNot := ''.
62451ecb3d3b changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11487
diff changeset
   724
                    (sensor := v windowGroup sensor) notNil ifTrue:[
62451ecb3d3b changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11487
diff changeset
   725
                        (pending := sensor pendingEvent) notNil ifTrue:[
14271
297ed164a7fc class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14238
diff changeset
   726
                            (Timestamp now secondDeltaFrom: pending timeStamp) > 1 ifTrue:[
11817
76227c9e12bc changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11813
diff changeset
   727
                                ((process := v windowGroup process) notNil and:[ process isDebugged]) ifTrue:[
76227c9e12bc changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11813
diff changeset
   728
                                    busyOrNot := ' [debug]'
76227c9e12bc changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11813
diff changeset
   729
                                ] ifFalse:[
76227c9e12bc changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11813
diff changeset
   730
                                    busyOrNot := ' [busy]'
76227c9e12bc changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11813
diff changeset
   731
                                ].
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
   732
                                busyOrNot := busyOrNot allBold withColor:Color red
11490
62451ecb3d3b changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11487
diff changeset
   733
                            ]
62451ecb3d3b changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11487
diff changeset
   734
                        ]
62451ecb3d3b changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11487
diff changeset
   735
                    ].
12499
3f6769e6733c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12067
diff changeset
   736
                    iconifiedOrNot := ''.
3f6769e6733c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12067
diff changeset
   737
                    v topView isCollapsed ifTrue:[
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
   738
                        iconifiedOrNot := ' (iconified)' withColor:Color blue.
12499
3f6769e6733c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12067
diff changeset
   739
                    ].
3f6769e6733c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12067
diff changeset
   740
                    appName,'"',(v label ? 'aView'),'"',busyOrNot,iconifiedOrNot
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   741
                ].
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   742
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   743
    knownTopViews := IdentitySet new.
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   744
    Screen allScreens do:[:aScreen |
16749
c1192209d968 #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 16747
diff changeset
   745
        aScreen allViewsDo:[:aView |
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   746
            |top showIt wg|
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   747
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   748
            aView notNil ifTrue:[
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   749
                top := aView topView.
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   750
                (knownTopViews includes:top) ifFalse:[
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   751
                    (top isKindOf:DebugView) ifTrue:[
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   752
                        "/ although modal, show it.
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   753
                        showIt := top realized
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   754
                    ] ifFalse:[
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   755
                        (top isKindOf:TopView) ifTrue:[
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   756
                            wg := top windowGroup.
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   757
                            showIt := (wg notNil and:[wg isModal not]).
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   758
                            showIt ifTrue:[
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   759
                                windowGroupFilterOrNil notNil ifTrue:[
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   760
                                    showIt := windowGroupFilterOrNil includes:wg
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   761
                                ]
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   762
                            ]
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   763
                        ] ifFalse:[
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   764
                            showIt := false
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   765
                        ].
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   766
                    ].
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   767
                    showIt ifTrue:[
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   768
                        aBlock value: top value:(genLabel value:top).
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   769
                        knownTopViews add: top.
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   770
                    ]
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   771
                ]
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   772
            ]
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   773
        ]
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   774
    ].
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   775
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   776
    "Created: / 27-04-2012 / 12:56:53 / cg"
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   777
!
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   778
2696
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   779
findApplicationClass:classOrClassName nameSpace:aNameSpace
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   780
    "find some application, given the classes name.
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   781
     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
   782
14381
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   783
    |findClass cls classNameSymbol|
2696
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   784
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   785
    classOrClassName isBehavior ifTrue:[
14381
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   786
        ^ classOrClassName.
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   787
    ].
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   788
    findClass :=
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   789
        [
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   790
            (classNameSymbol := classOrClassName asSymbolIfInterned) notNil ifTrue:[
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   791
                cls := Smalltalk at:classNameSymbol.
14121
3c8e880471d9 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   792
                cls isNil ifTrue:[
14381
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   793
                    "/ look if its in the nameSpace
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   794
                    aNameSpace notNil ifTrue:[
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   795
                        cls := aNameSpace at:classNameSymbol
14121
3c8e880471d9 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   796
                    ].
11832
a2fee9d12c5d changed: #findApplicationClass:nameSpace:
Claus Gittinger <cg@exept.de>
parents: 11817
diff changeset
   797
                ].
a2fee9d12c5d changed: #findApplicationClass:nameSpace:
Claus Gittinger <cg@exept.de>
parents: 11817
diff changeset
   798
            ].
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   799
        ].
14381
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   800
    findClass value.
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   801
    cls isNil ifTrue:[
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   802
        (Dialog confirm:(resources
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   803
                    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
   804
                    with:classOrClassName allBold)) ifFalse:[
14445
93a87572e630 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14381
diff changeset
   805
            ^ AbortOperationRequest raise
14381
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   806
        ].
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   807
        self withWaitCursorDo:[
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   808
            #(
14694
31166504525d class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14683
diff changeset
   809
                'stx:doc/coding'
14381
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   810
                'stx:clients'
16096
4cc6835c7a20 #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 16076
diff changeset
   811
                'stx:goodies/demos'
14381
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   812
                'stx:libwidg3'
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   813
            ) do:[:pkg |
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   814
                Processor activeProcess withPriority:(Processor userSchedulingPriority) do:[
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   815
                    Smalltalk recursiveInstallAutoloadedClassesFrom:(Smalltalk projectDirectoryForPackage:pkg).
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   816
                ].
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   817
            ].
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   818
        ].
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   819
        findClass value.
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   820
        cls isNil ifTrue:[
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   821
            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
   822
            ^ nil
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   823
        ].
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   824
        "/ self halt.
2696
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   825
    ].
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   826
    ^ cls
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   827
!
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   828
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   829
findWindow:title
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   830
    "a helper for find & destroy and find & raise operations;
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   831
     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
   832
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   833
    ^ self findWindow:title windowGroupFilter:nil
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   834
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   835
!
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   836
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   837
findWindow:title windowGroupFilter:windowGroupFilterOrNil
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   838
    "a helper for find & destroy and find & raise operations;
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   839
     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
   840
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   841
    |knownTopViewsAndLabels nameList box|
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   842
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   843
    knownTopViewsAndLabels := OrderedCollection new.
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   844
    self allTopViewsFilteringWindowGroups: windowGroupFilterOrNil withLabelsDo: [:v :lbl |
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   845
        knownTopViewsAndLabels add:(lbl -> v)
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   846
    ].
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   847
    knownTopViewsAndLabels sort:[:a :b | a key < b key].
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
    nameList := knownTopViewsAndLabels collect:[:lblAndView |
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   850
                                        |v l isDead wg p|
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   851
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   852
                                        l := lblAndView key.
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   853
                                        v := lblAndView value.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   854
                                        v device == Display ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   855
                                            l := l , ' [' , (v device displayName ? '?') , ']'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   856
                                        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   857
                                        ((wg := v windowGroup) notNil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   858
                                        and:[(p := wg process) notNil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   859
                                        and:[p state ~~ #dead]]) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   860
                                            l
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   861
                                        ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   862
                                            l , ' (dead ?)'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   863
                                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   864
                                      ].
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   865
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   866
    box := ListSelectionBox new.
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   867
    box selectionChangeCallback:[:selectionIndex |   |v|
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   868
                                    v := (knownTopViewsAndLabels at:box selectionIndex) value.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   869
                                    v raise. box raise
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   870
                                ].
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   871
    box noEnterField.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   872
    box list:nameList.
4412
710b2097c588 dialog strings
Claus Gittinger <cg@exept.de>
parents: 4399
diff changeset
   873
    box label:(resources string:'View Selection').
6352
1dfde810826f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6346
diff changeset
   874
    box title:(resources stringWithCRs:title).
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   875
    box action:[:selection |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   876
        |v|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   877
16747
7e55266044ea #BUGFIX by stefan
Stefan Vogel <sv@exept.de>
parents: 16687
diff changeset
   878
        box selectionIndex isNil ifTrue:[
7e55266044ea #BUGFIX by stefan
Stefan Vogel <sv@exept.de>
parents: 16687
diff changeset
   879
            ^ nil.
7e55266044ea #BUGFIX by stefan
Stefan Vogel <sv@exept.de>
parents: 16687
diff changeset
   880
        ].
7e55266044ea #BUGFIX by stefan
Stefan Vogel <sv@exept.de>
parents: 16687
diff changeset
   881
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   882
        v := (knownTopViewsAndLabels at:box selectionIndex) value.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   883
        box destroy.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   884
        ^ v
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   885
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   886
    box extent:400@300.
3293
d7b925f89a7b dont use explicit showAtPointer
Claus Gittinger <cg@exept.de>
parents: 3288
diff changeset
   887
    box open.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   888
    ^ nil
11354
cdab1a0846a2 changed: #findWindow:windowGroupFilter:
Claus Gittinger <cg@exept.de>
parents: 11270
diff changeset
   889
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   890
    "Modified: / 27-04-2012 / 12:59:37 / cg"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   891
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   892
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
   893
openApplication: classOrClassName
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   894
     "open an application, given by the classe name."
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   895
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
   896
    self openApplication:classOrClassName nameSpace:nil
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   897
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   898
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
   899
openApplication:classOrClassName nameSpace:aNameSpace
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   900
    "open some application, given the classes name.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   901
     Look for it in Smalltalk and the given nameSpace"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   902
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
   903
    self openApplication:classOrClassName nameSpace:aNameSpace with:#open
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   904
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   905
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
   906
openApplication:classOrClassName nameSpace:aNameSpace with:aSelector
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   907
    "open some application, given the classes name.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   908
     Look for it in Smalltalk and the given nameSpace"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   909
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   910
    |cls|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   911
2696
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   912
    cls := self findApplicationClass:classOrClassName nameSpace:aNameSpace.
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   913
    cls isNil ifTrue:[
14296
59c1a4f442e4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14271
diff changeset
   914
        Dialog information:'Could not find class: '
59c1a4f442e4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14271
diff changeset
   915
                            ,(classOrClassName isBehavior
59c1a4f442e4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14271
diff changeset
   916
                                ifTrue:[classOrClassName name]
59c1a4f442e4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14271
diff changeset
   917
                                ifFalse:[classOrClassName]).
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   918
        ^ self
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   919
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   920
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
   921
    Autoload autoloadFailedSignal handle:[:ex |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   922
        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
   923
    ] do:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   924
        self withWaitCursorDo:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   925
            cls perform:aSelector
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   926
        ]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   927
    ]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   928
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   929
7882
1f5e30497c9a changed #openFileBrowser
Claus Gittinger <cg@exept.de>
parents: 7871
diff changeset
   930
openFileBrowser
1f5e30497c9a changed #openFileBrowser
Claus Gittinger <cg@exept.de>
parents: 7871
diff changeset
   931
     "open a fileBrowser"
1f5e30497c9a changed #openFileBrowser
Claus Gittinger <cg@exept.de>
parents: 7871
diff changeset
   932
14183
ec5f8f775000 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 14123
diff changeset
   933
    self openApplication:UserPreferences fileBrowserClass nameSpace:nil
7882
1f5e30497c9a changed #openFileBrowser
Claus Gittinger <cg@exept.de>
parents: 7871
diff changeset
   934
1f5e30497c9a changed #openFileBrowser
Claus Gittinger <cg@exept.de>
parents: 7871
diff changeset
   935
    "Created: / 05-11-2007 / 11:16:17 / cg"
1f5e30497c9a changed #openFileBrowser
Claus Gittinger <cg@exept.de>
parents: 7871
diff changeset
   936
!
1f5e30497c9a changed #openFileBrowser
Claus Gittinger <cg@exept.de>
parents: 7871
diff changeset
   937
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   938
pickAView
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   939
    "let user pick a view and return it"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   940
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   941
    |v|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   942
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   943
    (Delay forSeconds:1) wait.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   944
    v := Screen current viewFromUser.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   945
    v isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   946
        self warn:'Sorry, this is not a smalltalk view'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   947
        ^ nil
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   948
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   949
    ^ v
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   950
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   951
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   952
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   953
saveScreenImage:anImage defaultName:defaultName
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   954
    "save an image into a file
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   955
     - ask user for filename using a fileSelectionBox."
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   956
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   957
    |fileName|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   958
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   959
    fileName := Dialog
9609
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   960
                    requestFileName:(resources string:'Save hardcopy image in:')
9748
a5701b91134a changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9665
diff changeset
   961
                    default:(defaultName , '.png')
9609
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   962
                    ok:(resources string:'Save')
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   963
                    abort:(resources string:'Cancel')
9658
c1eb68ba27eb changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9609
diff changeset
   964
                    pattern:'*.png;*.tiff;*.bmp'
9609
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   965
                    fromDirectory:nil
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   966
                    forSave:true
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   967
                    whenBoxCreatedEvaluate:[:box |
13119
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   968
                        |editButton paintButton copyButton|
9609
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   969
                        "/ UserPreferences current useNewFileDialog ifFalse:[
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   970
                            editButton := Button label:(resources string:'Edit').
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   971
                            editButton
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   972
                                action:[
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   973
                                    box hide; destroy.
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   974
                                    ImageEditor openOnImage:anImage.
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   975
                                ].
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   976
                            box addButton:editButton.
13119
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   977
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   978
                            paintButton := Button label:(resources string:'OS Editor').
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   979
                            paintButton
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   980
                                action:[
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   981
                                    |tempStream|
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   982
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   983
                                    tempStream := FileStream newTemporaryWithSuffix:'png'.
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   984
                                    box hide; destroy.
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   985
                                    PNGReader save:anImage onStream:tempStream.
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   986
                                    tempStream close.
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   987
                                    OperatingSystem
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   988
                                        openApplicationForDocument:tempStream fileName operation:#edit mimeType:'image/png'.
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   989
                                ].
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   990
                            box addButton:paintButton.
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   991
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   992
                            copyButton := Button label:(resources string:'Copy to Clipboard').
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   993
                            copyButton
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   994
                                action:[
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   995
                                    self window setClipboardObject:anImage.
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   996
                                    box hide; destroy.
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   997
                                ].
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   998
                            box addButton:copyButton.
9609
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   999
                        "/ ]
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
  1000
                   ].
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1001
    fileName notNil ifTrue:[
9665
f98a52e6b1aa changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9659
diff changeset
  1002
        anImage saveOn:fileName.
f98a52e6b1aa changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9659
diff changeset
  1003
        ImageEditView lastSaveDirectory:fileName asFilename directory pathName.
9609
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
  1004
    ].
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
  1005
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
  1006
    "Created: / 29-01-1998 / 23:20:36 / cg"
9748
a5701b91134a changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9665
diff changeset
  1007
    "Modified: / 08-02-2011 / 21:51:11 / cg"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1008
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1009
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1010
showDocumentation:aRelativeDocFilePath
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1011
    "open an HTML browser on some document"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1012
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1013
    "
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1014
     although that one is not yet finished,
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1015
     its better than nothing ...
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1016
    "
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1017
    HTMLDocumentView notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1018
        self withWaitCursorDo:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1019
            "
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1020
             temporary kludge;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1021
             not all machines can autoload binaries;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1022
             however, on my SGI (which can) we want it
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1023
             to load automatically.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1024
            "
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1025
            HTMLDocumentView isLoaded ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1026
                Error catch:[HTMLDocumentView autoload]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1027
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1028
            HTMLDocumentView isLoaded ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1029
                HTMLDocumentView openFullOnDocumentationFile:aRelativeDocFilePath.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1030
                ^ self
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1031
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1032
        ]
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1033
    ].
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1034
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1035
    self warn:'Sorry, the ST/X HTML reader is not
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1036
included in this release.
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1037
7782
c6b2180cc789 changed #showDocumentation:
Stefan Vogel <sv@exept.de>
parents: 7726
diff changeset
  1038
Please use firefox, konqueror, internet explorer or any
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1039
other HTML viewer to see the documentation.
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1040
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1041
The documentation is found in the ''doc/online'' directory.'.
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1042
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1043
    "Modified: / 25.2.1998 / 21:24:20 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1044
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1045
4859
462e871755e0 method category rename
Claus Gittinger <cg@exept.de>
parents: 4854
diff changeset
  1046
!AbstractLauncherApplication methodsFor:'private-settings callBacks'!
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1047
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1048
changeViewStyleTo:newStyle
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1049
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1050
    newStyle notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1051
        self withWaitCursorDo:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1052
            (transcript ? Transcript) showCR:'change style to ' , newStyle , ' ...'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1053
            View defaultStyle:newStyle asSymbol.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1054
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1055
        self reopenLauncher.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1056
        DebugView newDebugger.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1057
    ]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1058
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1059
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1060
fontBoxForEncoding:encodingMatch
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1061
    "open a fontBox, showing fonts which match some encoding
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1062
     (used when changing to japanese ...)"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1063
4062
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
  1064
    ^ LauncherDialogs fontBoxForEncoding:encodingMatch
2047
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1065
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1066
"/    |box y b
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1067
"/     labelDef buttonDef listDef menuDef textDef
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1068
"/     models labels allOfThem filter|
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1069
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1070
"/    encodingMatch notNil ifTrue:[
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1071
"/        filter := [:f | f encoding notNil
2047
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1072
"/                        and:[encodingMatch match:f encoding]].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1073
"/    ].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1074
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1075
"/    models := OrderedCollection new.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1076
"/    labels := OrderedCollection new.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1077
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1078
"/    models add:(allOfThem := nil asValue).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1079
"/    models add:(labelDef := Label defaultFont asValue).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1080
"/    models add:(buttonDef := Button defaultFont asValue).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1081
"/    models add:(listDef := SelectionInListView defaultFont asValue).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1082
"/    models add:(menuDef := MenuView defaultFont asValue).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1083
"/    models add:(textDef := TextView defaultFont asValue).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1084
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1085
"/    box := Dialog new.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1086
"/    box label:(resources string:'Font settings').
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1087
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1088
"/    models
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1089
"/    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
  1090
"/    do:[:model :title |
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1091
"/        |y2 lbl f i|
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1092
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1093
"/        f := model value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1094
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1095
"/        (box addTextLabel:title) adjust:#left.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1096
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1097
"/        y := box yPosition.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1098
"/        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
  1099
"/        b relativeExtent:nil; extent:(b preferredExtent).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1100
"/        y2 := box yPosition.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1101
"/        box yPosition:y.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1102
"/        i := box leftIndent.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1103
"/        box leftIndent:(b widthIncludingBorder + View viewSpacing).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1104
"/        (lbl := box addTextLabel:'')
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1105
"/            adjust:#left;
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1106
"/            font:(model value);
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1107
"/            labelChannel:(BlockValue
2047
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1108
"/                            with:[:v | |f|
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1109
"/                                f := v value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1110
"/                                f isNil ifTrue:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1111
"/                                    ''
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1112
"/                                ] ifFalse:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1113
"/                                    f userFriendlyName
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1114
"/                                ]
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1115
"/                            ]
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1116
"/                            argument:model).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1117
"/        labels add:lbl.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1118
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1119
"/        box leftIndent:i.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1120
"/        box yPosition:(box yPosition max:y2).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1121
"/        box addVerticalSpace.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1122
"/        box addHorizontalLine.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1123
"/        box addVerticalSpace.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1124
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1125
"/        b action:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1126
"/            |f|
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1127
"/
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1128
"/            f := FontPanel
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1129
"/                fontFromUserInitial:(model value)
2047
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1130
"/                              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
  1131
"/                             filter:filter.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1132
"/            f notNil ifTrue:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1133
"/                model == allOfThem ifTrue:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1134
"/                    models do:[:m | m value:f].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1135
"/                    labels do:[:l | l font:f]
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1136
"/                ] ifFalse:[
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1137
"/                    model value:f.
2047
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1138
"/                    lbl font:f.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1139
"/                ].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1140
"/            ]
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1141
"/        ].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1142
"/        model == allOfThem ifTrue:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1143
"/            box addVerticalSpace
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1144
"/        ]
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1145
"/    ].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1146
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1147
"/    box addAbortButton; addOkButton.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1148
"/    (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
  1149
"/        action:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1150
"/            "/ fetch defaults
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1151
"/            View readStyleSheetAndUpdateAllStyleCaches.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1152
"/            labelDef value: Label defaultFont.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1153
"/            buttonDef value: Button defaultFont.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1154
"/            listDef value: SelectionInListView defaultFont.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1155
"/            menuDef value: MenuView defaultFont.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1156
"/            textDef value: TextView defaultFont.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1157
"/        ].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1158
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1159
"/    box open.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1160
"/    box accepted ifTrue:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1161
"/        Label defaultFont:labelDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1162
"/        Button defaultFont:buttonDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1163
"/        Toggle defaultFont:buttonDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1164
"/        SelectionInListView defaultFont:listDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1165
"/        MenuView defaultFont:menuDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1166
"/        PullDownMenu defaultFont:menuDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1167
"/        TextView defaultFont:textDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1168
"/        EditTextView defaultFont:textDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1169
"/        CodeView defaultFont:textDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1170
"/    ].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1171
"/    box destroy.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1172
"/    ^ box accepted
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1173
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1174
    "Modified: / 15.9.1998 / 22:04:56 / cg"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1175
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1176
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1177
reopenLauncher
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1178
    "reopen a new launcher.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1179
     for now (since style & language settings currently do
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1180
     not affect living views ...)
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1181
     WARNING: bad design: Message known in LauncherDialogs"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1182
2034
b3537f805381 force reopen at same position (fvwm & mwm)
Claus Gittinger <cg@exept.de>
parents: 2021
diff changeset
  1183
    |oldOrigin contents builder newLauncher|
b3537f805381 force reopen at same position (fvwm & mwm)
Claus Gittinger <cg@exept.de>
parents: 2021
diff changeset
  1184
b3537f805381 force reopen at same position (fvwm & mwm)
Claus Gittinger <cg@exept.de>
parents: 2021
diff changeset
  1185
    oldOrigin := self window origin.
2458
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
  1186
    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
  1187
    builder := self class openAt:oldOrigin.
3787
88b39d2d33d8 tzpe on dialog label
Claus Gittinger <cg@exept.de>
parents: 3782
diff changeset
  1188
    builder window waitUntilVisible; origin:oldOrigin.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1189
    newLauncher := builder application.
2458
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
  1190
    transcript notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1191
        newLauncher transcript list:contents; hideCursor; scrollToBottom; cursorToEnd; showCursor.
2458
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
  1192
    ].
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1193
    ^ newLauncher
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1194
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1195
    "Modified: / 4.8.1998 / 17:08:33 / cg"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1196
! !
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1197
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1198
!AbstractLauncherApplication methodsFor:'queries'!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1199
3410
fd14c97c539a *** empty log message ***
penk
parents: 3408
diff changeset
  1200
bugReporterAvailable
fd14c97c539a *** empty log message ***
penk
parents: 3408
diff changeset
  1201
    ^ BugGUI notNil
8643
e69b9268f450 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8625
diff changeset
  1202
    or:[ Expecco::ExpeccoNetAPI notNil ]
3410
fd14c97c539a *** empty log message ***
penk
parents: 3408
diff changeset
  1203
!
fd14c97c539a *** empty log message ***
penk
parents: 3408
diff changeset
  1204
3120
564ee1530a8e startPDALauncher item invisible for the normal user
Claus Gittinger <cg@exept.de>
parents: 3100
diff changeset
  1205
hasPDALauncher
564ee1530a8e startPDALauncher item invisible for the normal user
Claus Gittinger <cg@exept.de>
parents: 3100
diff changeset
  1206
    ^ PDALauncher notNil
564ee1530a8e startPDALauncher item invisible for the normal user
Claus Gittinger <cg@exept.de>
parents: 3100
diff changeset
  1207
!
564ee1530a8e startPDALauncher item invisible for the normal user
Claus Gittinger <cg@exept.de>
parents: 3100
diff changeset
  1208
10907
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1209
monticelloRepositoryAvailable
11468
3d585b53fb82 changed:
Claus Gittinger <cg@exept.de>
parents: 11417
diff changeset
  1210
    ^ true "MCRepositoryBrowser notNil" "/ - will install, if required.
10907
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1211
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1212
    "Created: / 25-11-2011 / 17:54:37 / cg"
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1213
!
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1214
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1215
processName
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1216
    "for monitors only - my name"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1217
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1218
    ^ 'ST/X Launcher'
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1219
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1220
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1221
3575
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1222
remoteImageBrowserAvailable
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1223
    ^ SmalltalkShareClient notNil and:[RemoteImage notNil]
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1224
!
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1225
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1226
transcript
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1227
    "my transcript"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1228
3079
9e8b81438edb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3078
diff changeset
  1229
    transcript isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1230
        ^ Transcript current
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1231
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1232
    ^ transcript
9330
378159dded04 refactored for better reusability (menu configuration)
Claus Gittinger <cg@exept.de>
parents: 9303
diff changeset
  1233
!
378159dded04 refactored for better reusability (menu configuration)
Claus Gittinger <cg@exept.de>
parents: 9303
diff changeset
  1234
378159dded04 refactored for better reusability (menu configuration)
Claus Gittinger <cg@exept.de>
parents: 9303
diff changeset
  1235
windowTreeViewAvailable
378159dded04 refactored for better reusability (menu configuration)
Claus Gittinger <cg@exept.de>
parents: 9303
diff changeset
  1236
    ^ false "/ WindowTreeView notNil
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1237
! !
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1238
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
  1239
!AbstractLauncherApplication methodsFor:'settings dialog'!
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
  1240
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
  1241
openSettings
14752
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
  1242
    ^ self class openSettingsFor: self.
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
  1243
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
  1244
    "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
  1245
!
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
  1246
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
  1247
settingsClosed
13087
82522521c37e class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12928
diff changeset
  1248
    LastSettingsPageName := OpenSettingsDialog selectedItemsName.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1249
    OpenSettingsDialog := nil.
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
  1250
! !
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
  1251
4863
66a3c33f28a2 method category rename
Claus Gittinger <cg@exept.de>
parents: 4862
diff changeset
  1252
!AbstractLauncherApplication methodsFor:'startup & release'!
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1253
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1254
addTopViewsToCurrentProject
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1255
    "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
  1256
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1257
    ^ self
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1258
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1259
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1260
2314
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1261
closeDownViews
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1262
    OpenLaunchers remove:self ifAbsent:nil.
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1263
    super closeDownViews
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1264
!
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1265
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1266
postBuildWith:aBuilder
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1267
    super postBuildWith:aBuilder.
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1268
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1269
    OpenLaunchers isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1270
        OpenLaunchers := IdentitySet new.
2314
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1271
    ].
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1272
    OpenLaunchers add:self
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1273
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1274
!
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1275
5210
e63c19690b68 reOpen pushed up;
Claus Gittinger <cg@exept.de>
parents: 5181
diff changeset
  1276
reOpen
e63c19690b68 reOpen pushed up;
Claus Gittinger <cg@exept.de>
parents: 5181
diff changeset
  1277
    "reopen a new launcher.
e63c19690b68 reOpen pushed up;
Claus Gittinger <cg@exept.de>
parents: 5181
diff changeset
  1278
     for now (since style & language settings currently do
e63c19690b68 reOpen pushed up;
Claus Gittinger <cg@exept.de>
parents: 5181
diff changeset
  1279
     not affect living views ...)"
e63c19690b68 reOpen pushed up;
Claus Gittinger <cg@exept.de>
parents: 5181
diff changeset
  1280
e63c19690b68 reOpen pushed up;
Claus Gittinger <cg@exept.de>
parents: 5181
diff changeset
  1281
    self reopenLauncher "/ WARNING: bad design: Message known in LauncherDialogs
e63c19690b68 reOpen pushed up;
Claus Gittinger <cg@exept.de>
parents: 5181
diff changeset
  1282
e63c19690b68 reOpen pushed up;
Claus Gittinger <cg@exept.de>
parents: 5181
diff changeset
  1283
    "Modified: / 31.7.1998 / 22:48:12 / cg"
e63c19690b68 reOpen pushed up;
Claus Gittinger <cg@exept.de>
parents: 5181
diff changeset
  1284
!
e63c19690b68 reOpen pushed up;
Claus Gittinger <cg@exept.de>
parents: 5181
diff changeset
  1285
2040
06dd0e21aae0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2038
diff changeset
  1286
requestForWindowClose
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1287
    "close request from windowing system (window close);
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1288
     confirm and ask if closing of launcher only or
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1289
     a smalltalk-exit is wanted"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1290
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1291
    |answer|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1292
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1293
    answer := Dialog
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1294
                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
  1295
                labels:(resources array:#('Cancel' 'Close' 'Exit'))
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1296
                default:3.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1297
    answer isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1298
        "/ cancel
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1299
        ^ false
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1300
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1301
5989
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1302
    answer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1303
        ^ true
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1304
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1305
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1306
    self exit
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1307
2160
028c1d5740e5 exit smalltalk is now the default, when closing the launcher.
Claus Gittinger <cg@exept.de>
parents: 2149
diff changeset
  1308
    "Modified: / 20.5.1999 / 17:24:47 / cg"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1309
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1310
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1311
saveAndTerminateRequest
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1312
    "some windowManagers can send this, to shutDown an application
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1313
     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
  1314
     Although I have not yet encountered such a windowManager,
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1315
     we are already prepared for this ;-)"
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
    self snapshot.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1318
    super saveAndTerminateRequest
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
! !
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1321
4862
1838e1e01c92 method category rename
Claus Gittinger <cg@exept.de>
parents: 4859
diff changeset
  1322
!AbstractLauncherApplication methodsFor:'user actions-about'!
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1323
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1324
openLicenseConditions
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1325
    "open an HTML browser on the 'LICENCE' document"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1326
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1327
    self withWaitCursorDo:[
15925
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1328
        |rel lang doc doc_De doc_En|
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1329
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1330
        rel := Smalltalk releaseIdentification.
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1331
        ((rel = 'ST/X_free_vsn') or:[rel = 'ST/X_demo_free_vsn']) ifTrue:[
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1332
            doc_En := 'english/LICENCE_FREE_STX.html'.
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1333
            doc_De := 'german/LICENCE_FREE_STX.html'.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1334
        ] ifFalse:[
15925
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1335
            doc_En := 'english/LICENCE_STX.html'.
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1336
            doc_De := 'german/LICENCE_STX.html'.
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1337
        ].    
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1338
        ((lang := UserPreferences current language) = 'de'
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1339
        or:[lang = 'german']) ifTrue:[
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1340
            doc := doc_De
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1341
        ] ifFalse:[
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1342
            doc := doc_En
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1343
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1344
        doc := resources at:'LICENCEFILE' default:doc.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1345
        self showDocumentation:('../' , doc)
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1346
    ]
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1347
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1348
    "Created: / 5.2.1998 / 21:43:19 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1349
    "Modified: / 23.4.1998 / 11:45:53 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1350
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1351
4862
1838e1e01c92 method category rename
Claus Gittinger <cg@exept.de>
parents: 4859
diff changeset
  1352
!AbstractLauncherApplication methodsFor:'user actions-classes'!
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1353
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1354
browseAllBreakAndTracePoints
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1355
    "open a browser showing all breakPointed/traced methods
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1356
     (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
  1357
13146
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1358
    |filter|
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1359
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1360
    "/ only methods which are still anchored in the class are relevant here
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1361
    "/ (i.e. allInstances may return too many)
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1362
    filter := [:m | m mclass notNil].
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1363
3140
1f85ff8a1a22 UserPreference access
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  1364
    UserPreferences systemBrowserClass
13146
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1365
        browseMethods:(Set new
14534
7a7c0fbe16f8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14475
diff changeset
  1366
                        addAll:(WrappedMethod allWrappedMethods select:filter);
7a7c0fbe16f8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14475
diff changeset
  1367
                        addAll:(MethodWithBreakpoints allBreakpointedMethods select:filter);
13146
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1368
                        yourself)
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1369
        title:'All breakPointed/traced methods'
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1370
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1371
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1372
browseImplementors
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1373
    "open an implementors- browser after asking for a selector"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1374
11270
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1375
    |browserClass selector dialog|
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1376
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1377
    browserClass := UserPreferences systemBrowserClass.
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1378
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1379
    Tools::SearchDialog notNil ifTrue:[
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1380
        "/ use a better dialog
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1381
        dialog := Tools::SearchDialog new
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1382
            setupToAskForMethodSearchTitle:(resources string:'Selector to browse implementors of:\(TAB for completion; matchPattern allowed)')
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1383
            forBrowser:nil
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1384
            searchWhat:#selector searchArea:#everywhere
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1385
            withCaseIgnore:true withMatch:true
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1386
            withMethodList:false
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1387
            allowFind:false allowBuffer:false allowBrowser:true
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1388
            withTextEntry:true.
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1389
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1390
        dialog askThenDo:[
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1391
            |classes methods isMethod selector ignoreCase match|
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1392
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1393
            (classes := dialog classesToSearch) notEmptyOrNil ifTrue:[
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1394
                (selector := dialog selectorToSearch) notEmptyOrNil ifTrue:[
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1395
                    browserClass 
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1396
                        browseImplementorsOf:selector 
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1397
                        in:classes
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1398
                        ignoreCase:(dialog searchIgnoringCase)
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1399
                        match:(dialog searchWithMatch)    
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1400
                        title:(SystemBrowser classResources string:'implementors of: %1' with:selector).
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1401
                ].
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1402
            ].
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1403
        ].
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1404
        ^ self.
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1405
    ].
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1406
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1407
    "/ the simple dialog
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1408
    selector := Dialog
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1409
                    requestSelector:(resources string:'Browse implementors of (Tab for completion):')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1410
                    okLabel:(resources string:'Browse')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1411
                    initialAnswer:''.
3369
ac3ce702451c senders/implementors: Tab completion
Claus Gittinger <cg@exept.de>
parents: 3362
diff changeset
  1412
11270
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1413
    selector notEmptyOrNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1414
        self withWaitCursorDo:[
11270
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1415
            browserClass browseImplementorsMatching:selector
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1416
        ]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1417
    ].
3442
38a5ec1d3add *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3423
diff changeset
  1418
11270
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1419
    "Modified: / 14-02-2012 / 14:17:51 / cg"
2005
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
14943
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1422
browseReferencesToClass
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1423
    "open a browser after asking for a class"
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1424
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1425
    |browserClass class|
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1426
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1427
    browserClass := UserPreferences systemBrowserClass.
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1428
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1429
    class := Dialog
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1430
                    requestClassName:(resources string:'Browse References to Class named (Tab for Completion):')
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1431
                    okLabel:(resources string:'Browse')
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1432
                    initialAnswer:''.
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1433
    class notNil ifTrue:[
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1434
        self withWaitCursorDo:[
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1435
            browserClass browseReferendsOf:class
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1436
        ]
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1437
    ].
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1438
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1439
    "Modified: / 14-02-2012 / 14:20:56 / cg"
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1440
!
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1441
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1442
browseResources
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1443
    "open a resource- browser after asking for a resource string"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1444
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1445
    |box resourceHolder valueHolder component rsrc value t anyString|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1446
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1447
    anyString := resources string:'* any *'.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1448
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1449
    resourceHolder := ValueHolder newString.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1450
    valueHolder := '*' asValue.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1451
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1452
    box := DialogBox new.
6637
874c6de40070 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6621
diff changeset
  1453
    box label:(resources string:'Resource search:').
13735
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  1454
    component := box 
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  1455
                    addTextLabel:(resources stringWithCRs:'Search for methods which contain a\particular resource specification')
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  1456
                    adjust:#left.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1457
    box addVerticalSpace:10.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1458
13735
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  1459
    component := box 
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  1460
                    addTextLabel:(resources stringWithCRs:'Resource symbol (empty for any; no matchPattern allowed):')
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  1461
                    adjust:#left.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1462
    component :=  box addComboBoxOn:resourceHolder tabable:true.
3014
cb531619c185 Don't use obsolete methods.
Stefan Vogel <sv@exept.de>
parents: 3003
diff changeset
  1463
    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
  1464
13735
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  1465
    component := box 
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  1466
                    addTextLabel:(resources stringWithCRs:'Resource value (* for any; matchPattern is allowed):')
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  1467
                    adjust:#left.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1468
    box addInputFieldOn:valueHolder tabable:true.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1469
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1470
    box addVerticalSpace:10.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1471
    box addHelpButtonFor:'programming/language.html#RESOURCEDEFS'.
2048
f8c010698b75 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2047
diff changeset
  1472
    box addAbortAndOkButtons.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1473
3293
d7b925f89a7b dont use explicit showAtPointer
Claus Gittinger <cg@exept.de>
parents: 3288
diff changeset
  1474
    box open.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1475
    box destroy.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1476
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1477
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1478
        rsrc := resourceHolder value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1479
        value := valueHolder value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1480
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1481
        (rsrc size == 0 or:[rsrc = '*' or:[rsrc = anyString]]) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1482
            t := 'methods with any resource'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1483
            rsrc := nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1484
        ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1485
            t := 'methods with #' , rsrc , '-resource'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1486
            rsrc := rsrc withoutSeparators asSymbol
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1487
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1488
        (value size == 0 or:[value = '*']) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1489
            t := t , ' and any value'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1490
            value := nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1491
        ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1492
            t := t , ' and value ' , value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1493
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1494
        self withWaitCursorDo:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1495
            UserPreferences systemBrowserClass
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1496
                browseForResource:rsrc
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1497
                containing:value
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1498
                in:(Smalltalk allClasses)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1499
                title:t
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1500
        ]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1501
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1502
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1503
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1504
browseSenders
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1505
    "open a senders- browser after asking for a selector"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1506
11270
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1507
    |browserClass dialog selector|
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1508
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1509
    browserClass := UserPreferences systemBrowserClass.
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1510
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1511
    Tools::SearchDialog notNil ifTrue:[
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1512
        "/ use a better dialog
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1513
        dialog := Tools::SearchDialog new
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1514
            setupToAskForMethodSearchTitle:(resources string:'Selector to browse senders of:\(TAB for completion; matchPattern allowed)')
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1515
            forBrowser:nil
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1516
            searchWhat:#selector searchArea:#everywhere
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1517
            withCaseIgnore:true withMatch:true
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1518
            withMethodList:false
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1519
            allowFind:false allowBuffer:false allowBrowser:true
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1520
            withTextEntry:true.
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1521
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1522
        dialog askThenDo:[
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1523
            |classes methods isMethod selector ignoreCase match|
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1524
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1525
            (classes := dialog classesToSearch) notEmptyOrNil ifTrue:[
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1526
                (selector := dialog selectorToSearch) notEmptyOrNil ifTrue:[
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1527
                    browserClass 
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1528
                        browseAllCallsOn:selector 
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1529
                        in:classes
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1530
                        ignoreCase:(dialog searchIgnoringCase)
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1531
                        match:(dialog searchWithMatch)    
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1532
                        title:(SystemBrowser classResources string:'senders of: %1' with:selector).
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1533
                ].
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1534
            ].
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1535
        ].
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1536
        ^ self.
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1537
    ].
3369
ac3ce702451c senders/implementors: Tab completion
Claus Gittinger <cg@exept.de>
parents: 3362
diff changeset
  1538
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1539
    selector := Dialog
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1540
                    requestSelector:(resources string:'Browse Senders of (Tab for Completion):')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1541
                    okLabel:(resources string:'Browse')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1542
                    initialAnswer:''.
3369
ac3ce702451c senders/implementors: Tab completion
Claus Gittinger <cg@exept.de>
parents: 3362
diff changeset
  1543
    selector size > 0 ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1544
        self withWaitCursorDo:[
14943
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1545
            browserClass browseAllCallsOn:selector
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1546
        ]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1547
    ].
3442
38a5ec1d3add *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3423
diff changeset
  1548
11270
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1549
    "Modified: / 14-02-2012 / 14:20:56 / cg"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1550
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1551
4199
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
  1552
browseUnboundGlobals
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
  1553
    "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
  1554
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
  1555
    self withWaitCursorDo:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1556
        UserPreferences systemBrowserClass
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1557
            browseReferendsOfUnboundGlobalsWithTitle:(resources string:'References to unbound global variables')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1558
            warnIfNone:true
4199
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
  1559
    ]
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
  1560
!
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
  1561
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1562
browseUndeclared
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1563
    "open a browser on methods refering to undeclared variables"
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
    self withWaitCursorDo:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1566
        UserPreferences systemBrowserClass
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1567
            browseReferendsOf:(Smalltalk undeclaredPrefix , '*')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1568
            title:(resources string:'References to undeclared variables')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1569
            warnIfNone:true
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1570
    ]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1571
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1572
3778
5595e6f544ab undeclared variable stuff
penk
parents: 3741
diff changeset
  1573
clearUndeclaredVariables
5595e6f544ab undeclared variable stuff
penk
parents: 3741
diff changeset
  1574
    "remove all undeclared variables"
5595e6f544ab undeclared variable stuff
penk
parents: 3741
diff changeset
  1575
5595e6f544ab undeclared variable stuff
penk
parents: 3741
diff changeset
  1576
    Smalltalk clearUndeclaredVariables
5595e6f544ab undeclared variable stuff
penk
parents: 3741
diff changeset
  1577
!
5595e6f544ab undeclared variable stuff
penk
parents: 3741
diff changeset
  1578
5597
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1579
newSystemBrowserClass
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1580
    |newSystemBrowserClass|
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1581
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1582
    newSystemBrowserClass := Tools::NewSystemBrowser ? NewSystemBrowser.
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1583
    newSystemBrowserClass isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1584
        self warn:'This needs the NewSystemBrowser to be loaded.'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1585
        AbortOperationRequest raise.
5597
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1586
    ].
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1587
    ^ newSystemBrowserClass
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1588
!
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1589
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1590
removeAllBreakAndTracePoints
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1591
    "remove all break- and trace points"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1592
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1593
    self
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1594
        withCursor:Cursor execute
13146
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1595
        do:[ 
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1596
            MessageTracer cleanup.
14534
7a7c0fbe16f8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14475
diff changeset
  1597
            MethodWithBreakpoints allBreakpointedMethods do:[:m | m restoreOriginalMethod]
13146
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1598
        ]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1599
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1600
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1601
startClassBrowser
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1602
    "open a classBrowser; asks for class"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1603
3140
1f85ff8a1a22 UserPreference access
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  1604
    UserPreferences systemBrowserClass askThenBrowseClass
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1605
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1606
3100
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1607
startClassBrowserOnChangedClasses
2854
ac97ea47bb08 browse changed classes added
Claus Gittinger <cg@exept.de>
parents: 2845
diff changeset
  1608
    "open a classBrowser on the changeSet"
ac97ea47bb08 browse changed classes added
Claus Gittinger <cg@exept.de>
parents: 2845
diff changeset
  1609
5597
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1610
    self newSystemBrowserClass openOnClassesInChangeSet
2854
ac97ea47bb08 browse changed classes added
Claus Gittinger <cg@exept.de>
parents: 2845
diff changeset
  1611
!
ac97ea47bb08 browse changed classes added
Claus Gittinger <cg@exept.de>
parents: 2845
diff changeset
  1612
3100
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1613
startClassBrowserOnChangedMethods
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1614
    "open a classBrowser on the changeSet"
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1615
5597
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1616
    self newSystemBrowserClass openOnMethodsInChangeSet
3100
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1617
!
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1618
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1619
startClassBrowserOnChanges
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1620
    "open a classBrowser on the changeSet"
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1621
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1622
    ^ self startClassBrowserOnChangedClasses
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1623
!
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1624
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1625
startClassHierarchyBrowser
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1626
    "open a classHierarchyBrowser; asks for class"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1627
3140
1f85ff8a1a22 UserPreference access
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  1628
    UserPreferences systemBrowserClass askThenBrowseClassHierarchy
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1629
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1630
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1631
startFullClassBrowser
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1632
    "open a fullClass systemBrowser; asks for class"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1633
3140
1f85ff8a1a22 UserPreference access
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  1634
    UserPreferences systemBrowserClass askThenBrowseFullClassProtocol
3575
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1635
!
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1636
10907
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1637
startMonticelloRepositoryBrowser
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1638
    "open a monticello repository browser. Unfinished & experimental."
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1639
11468
3d585b53fb82 changed:
Claus Gittinger <cg@exept.de>
parents: 11417
diff changeset
  1640
    MCRepositoryBrowser isNil ifTrue:[
3d585b53fb82 changed:
Claus Gittinger <cg@exept.de>
parents: 11417
diff changeset
  1641
        Smalltalk loadPackage:'stx:goodies/monticello'
3d585b53fb82 changed:
Claus Gittinger <cg@exept.de>
parents: 11417
diff changeset
  1642
    ].
3d585b53fb82 changed:
Claus Gittinger <cg@exept.de>
parents: 11417
diff changeset
  1643
10907
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1644
    MCRepositoryBrowser open.
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1645
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1646
    "Created: / 25-11-2011 / 17:55:18 / cg"
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1647
!
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1648
3575
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1649
startRemoteImageBrowser
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1650
    "open a remoteImage browser; asks for hostname.
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1651
     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
  1652
     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
  1653
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1654
    |hostName|
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1655
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1656
    hostName := Dialog request:'Remote Host:'.
8428
124b2613d6aa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8421
diff changeset
  1657
    hostName isEmptyOrNil ifTrue:[^ self].
124b2613d6aa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8421
diff changeset
  1658
3575
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1659
    SystemBrowser openOnRemoteImageOnHost:hostName port:nil.
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1660
!
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1661
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1662
startSnapshotImageBrowser
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1663
    "open a snapshotImage browser; asks for filename.
4491
b5f8412a83e2 comments
Claus Gittinger <cg@exept.de>
parents: 4479
diff changeset
  1664
     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
  1665
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1666
    |imageFileName|
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1667
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1668
    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
  1669
    imageFileName isEmptyOrNil ifTrue: [^ self ].
124b2613d6aa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8421
diff changeset
  1670
3575
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1671
    SystemBrowser openOnSnapShotImage:imageFileName
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1672
! !
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1673
4862
1838e1e01c92 method category rename
Claus Gittinger <cg@exept.de>
parents: 4859
diff changeset
  1674
!AbstractLauncherApplication methodsFor:'user actions-demos'!
2038
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
  1675
3035
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
  1676
startPDALauncher
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
  1677
    self startRemoteLauncherWithSetup:[:newDisplay | newDisplay bePDA].
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
  1678
!
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
  1679
2038
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
  1680
startRemoteLauncher
3035
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
  1681
    self startRemoteLauncherWithSetup:[:newDisplay | ].
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
  1682
!
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
  1683
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
  1684
startRemoteLauncherWithSetup:aSetupBlock
2754
565abad0ef64 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2737
diff changeset
  1685
    |host remoteDisplay remoteDisplayClass|
2038
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
  1686
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1687
    host := Dialog
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1688
                request:(resources string:'Remote Launcher on which display:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1689
                initialAnswer:'{hostName}:0'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1690
                initialSelection:(1 to:10).
2038
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
  1691
    host size > 0 ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1692
        (host includes:$:) ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1693
            host := (host , ':0')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1694
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1695
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1696
        remoteDisplayClass := XWorkstation.
2754
565abad0ef64 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2737
diff changeset
  1697
2755
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
  1698
"/        "/ 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
  1699
"/        "/ (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
  1700
"/        "/ 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
  1701
"/
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
  1702
"/        "/ only simulated GL can be done remote (i.e. not on SGI)
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1703
"/        (Screen current supportsGLDrawing
2755
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
  1704
"/        and:[Screen current isTrueGL not])
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
  1705
"/        ifTrue:[
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
  1706
"/            remoteDisplayClass := GLXWorkstation.
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
  1707
"/        ].
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
  1708
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1709
        [
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1710
            remoteDisplay := remoteDisplayClass newDispatchingFor:host.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1711
        ] on:Screen deviceOpenErrorSignal do:[:ex|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1712
            self warn:'Could not connect to display: ''' , host , '''.'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1713
            ^ self
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1714
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1715
        aSetupBlock value:remoteDisplay.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1716
        Screen currentScreenQuerySignal
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1717
            answer:remoteDisplay
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1718
            do:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1719
                self class open.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1720
            ]
2038
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
  1721
    ].
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
  1722
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
  1723
    "Created: / 10.9.1998 / 11:48:42 / cg"
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
  1724
! !
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
  1725
4862
1838e1e01c92 method category rename
Claus Gittinger <cg@exept.de>
parents: 4859
diff changeset
  1726
!AbstractLauncherApplication methodsFor:'user actions-file'!
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1727
5989
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1728
exit
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1729
    "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
  1730
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1731
    |fileName saveAndExit box|
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1732
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1733
    box := EnterBox2 title:(resources string:'Save image before exiting?')
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1734
        okText:(resources string:'Exit')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1735
        abortText:(resources string:'Cancel')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1736
        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
  1737
    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
  1738
    box initialText: ObjectMemory nameForSnapshot.
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1739
    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
  1740
    box showAtPointer.
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1741
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1742
    saveAndExit notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1743
        [
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1744
            saveAndExit ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1745
                self saveImageAs:fileName
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1746
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1747
            Smalltalk exit.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1748
        ] on:SnapshotError do:[:ex|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1749
            "do not exit when snapshot writing fails"
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1750
            self warn:ex description.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1751
        ]
16341
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1752
    ].
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1753
    
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1754
    saveAndExit ~~ true ifTrue:[
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1755
        "/ not saved - see if settings changed
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1756
        UserPreferences current isModified ifTrue:[
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1757
            (Dialog confirm:(resources string:'Save changed settings before exiting?')) ifTrue:[
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1758
                SettingsDialog saveSettingsAsDefaultSettings 
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1759
            ]
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1760
        ]
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1761
    ].
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1762
    
5989
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1763
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1764
    "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
  1765
!
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1766
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1767
fileLoadPackage
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1768
    "open a dialog showing wellknown packages (listed in the packages directory)
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1769
     and offer to load the selected one(s).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1770
     TODO: make this a little app instead of an ad-hoc dialog, 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1771
     add remote packages (central goody repository?),
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1772
     add a description text view, showing more info about the package (from where?)"    
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1773
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1774
    self class openLoadPackageDialog.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1775
!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1776
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1777
saveImageAs: aFileName
6233
b2a1e0b092f0 Make snapshot writing more robust against errors.
Stefan Vogel <sv@exept.de>
parents: 6175
diff changeset
  1778
    "save image in aFilename.
b2a1e0b092f0 Make snapshot writing more robust against errors.
Stefan Vogel <sv@exept.de>
parents: 6175
diff changeset
  1779
     Sender has to handle SnapshotError"
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1780
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1781
    aFileName notNil ifTrue:[
11684
f405935b2a6e changed: #saveImageAs:
Claus Gittinger <cg@exept.de>
parents: 11490
diff changeset
  1782
        self withWriteCursorDo:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1783
            ObjectMemory snapShotOn:aFileName
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1784
        ].
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1785
    ].
11684
f405935b2a6e changed: #saveImageAs:
Claus Gittinger <cg@exept.de>
parents: 11490
diff changeset
  1786
f405935b2a6e changed: #saveImageAs:
Claus Gittinger <cg@exept.de>
parents: 11490
diff changeset
  1787
    "Modified: / 27-07-2012 / 09:46:19 / cg"
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1788
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1789
4862
1838e1e01c92 method category rename
Claus Gittinger <cg@exept.de>
parents: 4859
diff changeset
  1790
!AbstractLauncherApplication methodsFor:'user actions-help'!
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1791
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1792
showBookPrintDocument
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1793
    "open an HTML browser on the 'book'-printing document"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1794
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1795
    self showDocumentation:'BOOK.html'
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1796
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1797
8314
bfc7e0a01c4b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8298
diff changeset
  1798
showCredits
13950
05f423b4291a Fix in AbstractLauncherApplication>>#showCredits
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13918
diff changeset
  1799
    self showDocumentation:'credits.html'
05f423b4291a Fix in AbstractLauncherApplication>>#showCredits
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13918
diff changeset
  1800
05f423b4291a Fix in AbstractLauncherApplication>>#showCredits
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13918
diff changeset
  1801
    "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
  1802
!
bfc7e0a01c4b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8298
diff changeset
  1803
6175
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1804
showPortInfo
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1805
    |portNr url|
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1806
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1807
    portNr := Dialog request:'Port Number:'.
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1808
    portNr isEmptyOrNil ifTrue:[^ self].
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1809
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1810
    url := 'http://www.grc.com/port_' , portNr printString , '.htm'.
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1811
    self withWaitCursorDo:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1812
        HTMLDocumentView openFullOnURL:url.
6175
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1813
    ]
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1814
!
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1815
4448
3fe9b324e809 showRFC added
Claus Gittinger <cg@exept.de>
parents: 4436
diff changeset
  1816
showRFC
3fe9b324e809 showRFC added
Claus Gittinger <cg@exept.de>
parents: 4436
diff changeset
  1817
    |rfc url|
3fe9b324e809 showRFC added
Claus Gittinger <cg@exept.de>
parents: 4436
diff changeset
  1818
8401
4e41a3ae1904 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8385
diff changeset
  1819
    rfc := Dialog request:'RFC Number ("index" for list):'.
4448
3fe9b324e809 showRFC added
Claus Gittinger <cg@exept.de>
parents: 4436
diff changeset
  1820
    rfc isEmptyOrNil ifTrue:[^ self].
3fe9b324e809 showRFC added
Claus Gittinger <cg@exept.de>
parents: 4436
diff changeset
  1821
8401
4e41a3ae1904 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8385
diff changeset
  1822
    rfc = 'index' ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1823
        url := 'http://www.faqs.org/rfcs/'.
8401
4e41a3ae1904 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8385
diff changeset
  1824
    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1825
        url := 'http://www.faqs.org/rfcs/rfc' , rfc printString , '.html'.
8401
4e41a3ae1904 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8385
diff changeset
  1826
    ].
4448
3fe9b324e809 showRFC added
Claus Gittinger <cg@exept.de>
parents: 4436
diff changeset
  1827
    self withWaitCursorDo:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1828
        HTMLDocumentView openFullOnURL:url.
4448
3fe9b324e809 showRFC added
Claus Gittinger <cg@exept.de>
parents: 4436
diff changeset
  1829
    ]
3fe9b324e809 showRFC added
Claus Gittinger <cg@exept.de>
parents: 4436
diff changeset
  1830
!
3fe9b324e809 showRFC added
Claus Gittinger <cg@exept.de>
parents: 4436
diff changeset
  1831
8117
7043c5e27bee tip of the day
Claus Gittinger <cg@exept.de>
parents: 8115
diff changeset
  1832
showTipOfTheDay
7043c5e27bee tip of the day
Claus Gittinger <cg@exept.de>
parents: 8115
diff changeset
  1833
    "open a tip-of-the-day window"
7043c5e27bee tip of the day
Claus Gittinger <cg@exept.de>
parents: 8115
diff changeset
  1834
7043c5e27bee tip of the day
Claus Gittinger <cg@exept.de>
parents: 8115
diff changeset
  1835
    DidYouKnowTipViewer open
7043c5e27bee tip of the day
Claus Gittinger <cg@exept.de>
parents: 8115
diff changeset
  1836
!
7043c5e27bee tip of the day
Claus Gittinger <cg@exept.de>
parents: 8115
diff changeset
  1837
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1838
startClassDocumentation
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1839
    "open an HTML browser on the 'classDoc/TOP' document"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1840
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1841
    self showDocumentation:'classDoc/TOP.html'
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1842
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1843
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1844
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1845
startDocumentationIndex
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1846
    "open an HTML browser on the 'index' document"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1847
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1848
    self showDocumentation:'index.html'
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1849
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1850
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1851
startDocumentationTool
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1852
    "open an HTML browser on the 'TOP' document"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1853
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1854
    self showDocumentation:'TOP.html'
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1855
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1856
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1857
15385
8d0380a77aba class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15367
diff changeset
  1858
startLauncherDocumentation
8d0380a77aba class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15367
diff changeset
  1859
    "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
  1860
8d0380a77aba class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15367
diff changeset
  1861
    self showDocumentation:'tools/misc/TOP.html#LAUNCHER'
8d0380a77aba class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15367
diff changeset
  1862
!
8d0380a77aba class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15367
diff changeset
  1863
8625
40edf78ff6aa changed #startProgrammersGuide
Claus Gittinger <cg@exept.de>
parents: 8622
diff changeset
  1864
startProgrammersGuide
40edf78ff6aa changed #startProgrammersGuide
Claus Gittinger <cg@exept.de>
parents: 8622
diff changeset
  1865
    "open an HTML browser on the 'programers guide' document"
40edf78ff6aa changed #startProgrammersGuide
Claus Gittinger <cg@exept.de>
parents: 8622
diff changeset
  1866
40edf78ff6aa changed #startProgrammersGuide
Claus Gittinger <cg@exept.de>
parents: 8622
diff changeset
  1867
    self showDocumentation:'programming/TOP.html'
40edf78ff6aa changed #startProgrammersGuide
Claus Gittinger <cg@exept.de>
parents: 8622
diff changeset
  1868
!
40edf78ff6aa changed #startProgrammersGuide
Claus Gittinger <cg@exept.de>
parents: 8622
diff changeset
  1869
8769
1698bfb7f08e added: #startSmalltalkTutorial
Claus Gittinger <cg@exept.de>
parents: 8761
diff changeset
  1870
startSmalltalkTutorial
1698bfb7f08e added: #startSmalltalkTutorial
Claus Gittinger <cg@exept.de>
parents: 8761
diff changeset
  1871
    "open an HTML browser on 'doc\books\JoyOfST\IntroToST.html' document"
1698bfb7f08e added: #startSmalltalkTutorial
Claus Gittinger <cg@exept.de>
parents: 8761
diff changeset
  1872
1698bfb7f08e added: #startSmalltalkTutorial
Claus Gittinger <cg@exept.de>
parents: 8761
diff changeset
  1873
    self showDocumentation:'books/JoyOfST/IntroToST.html'
1698bfb7f08e added: #startSmalltalkTutorial
Claus Gittinger <cg@exept.de>
parents: 8761
diff changeset
  1874
!
1698bfb7f08e added: #startSmalltalkTutorial
Claus Gittinger <cg@exept.de>
parents: 8761
diff changeset
  1875
8401
4e41a3ae1904 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8385
diff changeset
  1876
startToolsDocumentation
4e41a3ae1904 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8385
diff changeset
  1877
    "open an HTML browser on the 'tools/TOP' document"
4e41a3ae1904 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8385
diff changeset
  1878
4e41a3ae1904 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8385
diff changeset
  1879
    self showDocumentation:'tools/TOP.html'
4e41a3ae1904 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8385
diff changeset
  1880
!
4e41a3ae1904 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8385
diff changeset
  1881
5071
20afba5cc3e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5061
diff changeset
  1882
startTutorial
20afba5cc3e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5061
diff changeset
  1883
    "open an HTML browser on the 'getstart/tutorial.html' document"
20afba5cc3e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5061
diff changeset
  1884
20afba5cc3e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5061
diff changeset
  1885
    self showDocumentation:'getstart/tutorial.html'
20afba5cc3e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5061
diff changeset
  1886
!
20afba5cc3e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5061
diff changeset
  1887
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1888
startWhatsNewDocumentation
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1889
    "open an HTML browser on the 'whatsNew.html' document"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1890
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1891
    self showDocumentation:'whatsNew.html'
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1892
2296
cb2a81a506ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2294
diff changeset
  1893
!
cb2a81a506ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2294
diff changeset
  1894
cb2a81a506ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2294
diff changeset
  1895
startWhatsNewSTX
cb2a81a506ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2294
diff changeset
  1896
    "open an HTML browser on the 'relNotes.html' document"
cb2a81a506ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2294
diff changeset
  1897
cb2a81a506ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2294
diff changeset
  1898
    self showDocumentation:'newFeatures.html'
cb2a81a506ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2294
diff changeset
  1899
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1900
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1901
4862
1838e1e01c92 method category rename
Claus Gittinger <cg@exept.de>
parents: 4859
diff changeset
  1902
!AbstractLauncherApplication methodsFor:'user actions-system'!
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1903
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1904
compressingGarbageCollect
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1905
    "perform a compressing garbageCollect"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1906
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1907
    self withWaitCursorDo:[ObjectMemory verboseGarbageCollect]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1908
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1909
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1910
7899
f33a16fa5301 New menu entry to reload the resource files
Stefan Vogel <sv@exept.de>
parents: 7882
diff changeset
  1911
flushCachedResources
f33a16fa5301 New menu entry to reload the resource files
Stefan Vogel <sv@exept.de>
parents: 7882
diff changeset
  1912
    "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
  1913
f33a16fa5301 New menu entry to reload the resource files
Stefan Vogel <sv@exept.de>
parents: 7882
diff changeset
  1914
    Smalltalk changed:#Language.  "this flushes everything"
f33a16fa5301 New menu entry to reload the resource files
Stefan Vogel <sv@exept.de>
parents: 7882
diff changeset
  1915
!
f33a16fa5301 New menu entry to reload the resource files
Stefan Vogel <sv@exept.de>
parents: 7882
diff changeset
  1916
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1917
garbageCollect
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1918
    "perform a non-compressing garbageCollect"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1919
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1920
    self withWaitCursorDo:[ObjectMemory reclaimSymbols]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1921
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1922
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1923
7929
04fe3c979a94 changed #objectModuleDialog - fix method category
Stefan Vogel <sv@exept.de>
parents: 7899
diff changeset
  1924
objectModuleDialog
04fe3c979a94 changed #objectModuleDialog - fix method category
Stefan Vogel <sv@exept.de>
parents: 7899
diff changeset
  1925
    "opens a moduleInfo dialog"
04fe3c979a94 changed #objectModuleDialog - fix method category
Stefan Vogel <sv@exept.de>
parents: 7899
diff changeset
  1926
7945
50d6071ecb8d changed #objectModuleDialog
Claus Gittinger <cg@exept.de>
parents: 7929
diff changeset
  1927
    Tools::ObjectModuleInformation notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1928
        self openApplication:#'Tools::ObjectModuleInformation'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1929
        ^ self.
7945
50d6071ecb8d changed #objectModuleDialog
Claus Gittinger <cg@exept.de>
parents: 7929
diff changeset
  1930
    ].
50d6071ecb8d changed #objectModuleDialog
Claus Gittinger <cg@exept.de>
parents: 7929
diff changeset
  1931
7929
04fe3c979a94 changed #objectModuleDialog - fix method category
Stefan Vogel <sv@exept.de>
parents: 7899
diff changeset
  1932
    ^ LauncherDialogs objectModuleDialog
04fe3c979a94 changed #objectModuleDialog - fix method category
Stefan Vogel <sv@exept.de>
parents: 7899
diff changeset
  1933
04fe3c979a94 changed #objectModuleDialog - fix method category
Stefan Vogel <sv@exept.de>
parents: 7899
diff changeset
  1934
    "Modified: / 31.7.1998 / 17:33:24 / cg"
04fe3c979a94 changed #objectModuleDialog - fix method category
Stefan Vogel <sv@exept.de>
parents: 7899
diff changeset
  1935
!
04fe3c979a94 changed #objectModuleDialog - fix method category
Stefan Vogel <sv@exept.de>
parents: 7899
diff changeset
  1936
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1937
startStopEventTrace
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1938
    "start/stop event tracing for a particular view"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1939
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1940
    |v wg|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1941
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1942
    v := Screen current viewFromUser.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1943
    v notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1944
        v := v topView.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1945
        wg := v windowGroup.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1946
        wg notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1947
            "/
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1948
            "/ toggle eventTrace in its windowGroup
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1949
            "/
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1950
            wg traceEvents:(wg traceEvents not)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1951
        ]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1952
    ]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1953
! !
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1954
4862
1838e1e01c92 method category rename
Claus Gittinger <cg@exept.de>
parents: 4859
diff changeset
  1955
!AbstractLauncherApplication methodsFor:'user actions-tools'!
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1956
2210
efe47610b7ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2209
diff changeset
  1957
inspectGlobalVariables
efe47610b7ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2209
diff changeset
  1958
    "inspect globals"
efe47610b7ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2209
diff changeset
  1959
9084
3b0b89c91c71 changed:
Claus Gittinger <cg@exept.de>
parents: 9052
diff changeset
  1960
    WorkspaceApplication notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1961
        "/ looks nicer...
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1962
        WorkspaceApplication openWithGlobalsInspector.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1963
        ^ self.
9084
3b0b89c91c71 changed:
Claus Gittinger <cg@exept.de>
parents: 9052
diff changeset
  1964
    ].
2210
efe47610b7ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2209
diff changeset
  1965
    Smalltalk inspect
efe47610b7ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2209
diff changeset
  1966
!
efe47610b7ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2209
diff changeset
  1967
2207
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  1968
inspectWorkspaceVariables
2210
efe47610b7ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2209
diff changeset
  1969
    "inspect workspace variables"
2207
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  1970
9084
3b0b89c91c71 changed:
Claus Gittinger <cg@exept.de>
parents: 9052
diff changeset
  1971
    WorkspaceApplication notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1972
        "/ looks nicer...
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1973
        WorkspaceApplication openWithWorkspaceVariableInspector.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1974
        ^ self.
9084
3b0b89c91c71 changed:
Claus Gittinger <cg@exept.de>
parents: 9052
diff changeset
  1975
    ].
3b0b89c91c71 changed:
Claus Gittinger <cg@exept.de>
parents: 9052
diff changeset
  1976
    "/ Workspace workspaceVariables inspect
2207
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  1977
!
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  1978
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1979
newProject
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1980
    "creates a new project & opens a projectView for it"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1981
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1982
    Project notNil ifTrue: [(ProjectView for: Project new) open]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1983
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1984
8290
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  1985
openEvaluationWorkspace
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  1986
    WorkspaceApplication notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1987
        ^ WorkspaceApplication openEvaluationWorkspace
8290
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  1988
    ].
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  1989
    ^ self openApplication:Workspace
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  1990
!
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  1991
8319
d2f8c4cafb80 +openMyWorkspace
Claus Gittinger <cg@exept.de>
parents: 8314
diff changeset
  1992
openMyWorkspace
d2f8c4cafb80 +openMyWorkspace
Claus Gittinger <cg@exept.de>
parents: 8314
diff changeset
  1993
    WorkspaceApplication notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1994
        ^ WorkspaceApplication openMyWorkspace
8319
d2f8c4cafb80 +openMyWorkspace
Claus Gittinger <cg@exept.de>
parents: 8314
diff changeset
  1995
    ].
d2f8c4cafb80 +openMyWorkspace
Claus Gittinger <cg@exept.de>
parents: 8314
diff changeset
  1996
    ^ self openApplication:Workspace
d2f8c4cafb80 +openMyWorkspace
Claus Gittinger <cg@exept.de>
parents: 8314
diff changeset
  1997
!
d2f8c4cafb80 +openMyWorkspace
Claus Gittinger <cg@exept.de>
parents: 8314
diff changeset
  1998
15236
92e7ef5d694e class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14943
diff changeset
  1999
openRegularWorkspace
92e7ef5d694e class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14943
diff changeset
  2000
    WorkspaceApplication notNil ifTrue:[
92e7ef5d694e class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14943
diff changeset
  2001
        ^ WorkspaceApplication openRegularWorkspace
92e7ef5d694e class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14943
diff changeset
  2002
    ].
92e7ef5d694e class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14943
diff changeset
  2003
    ^ self openApplication:Workspace
92e7ef5d694e class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14943
diff changeset
  2004
!
92e7ef5d694e class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14943
diff changeset
  2005
8290
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  2006
openSystemWorkspace
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  2007
    WorkspaceApplication notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2008
        ^ WorkspaceApplication openSystemWorkspace
8290
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  2009
    ].
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  2010
    ^ self openApplication:Workspace
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  2011
!
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  2012
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2013
openTerminal
5298
578f2afad9da terminal application
Claus Gittinger <cg@exept.de>
parents: 5277
diff changeset
  2014
    TerminalApplication notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2015
        ^ TerminalApplication open
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2016
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2017
    self openApplication:#VT100TerminalView
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2018
!
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2019
15275
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2020
openTextDiffTool
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2021
    Tools::TextDiff2Tool isNil ifTrue:[
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2022
        Dialog warn:'Tools::TextDiff2Tool is missing'.
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2023
        ^ self        
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2024
    ].
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2025
    ^Tools::TextDiff2Tool 
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2026
        openOn:'Paste some text here' label:'text1'
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2027
        and:'Paste the other text text here' label:'text2'
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2028
!
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2029
3158
70963eea944a new workspace
Claus Gittinger <cg@exept.de>
parents: 3140
diff changeset
  2030
openWorkspace
70963eea944a new workspace
Claus Gittinger <cg@exept.de>
parents: 3140
diff changeset
  2031
    WorkspaceApplication notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2032
        ^ WorkspaceApplication open
3158
70963eea944a new workspace
Claus Gittinger <cg@exept.de>
parents: 3140
diff changeset
  2033
    ].
70963eea944a new workspace
Claus Gittinger <cg@exept.de>
parents: 3140
diff changeset
  2034
    ^ self openApplication:Workspace
70963eea944a new workspace
Claus Gittinger <cg@exept.de>
parents: 3140
diff changeset
  2035
!
70963eea944a new workspace
Claus Gittinger <cg@exept.de>
parents: 3140
diff changeset
  2036
2207
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  2037
removeAllWorkspaceVariables
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  2038
    "remove workspace variables"
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  2039
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  2040
    Workspace removeAllWorkspaceVariables
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  2041
!
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  2042
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2043
selectProject
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2044
    "asks for and switch to another project"
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
    |list box|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2047
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2048
    Project notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2049
        list := Project allInstances.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2050
        box := ListSelectionBox new.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2051
        box list:(list collect:[:p | p name]).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2052
        box title:(resources string:'Select a project').
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2053
        box action:[:selection |
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2054
            |project|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2055
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2056
            project := list detect:[:p | p name = selection] ifNone:[nil].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2057
            project isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2058
                transcript notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2059
                    transcript showCR:'No such project.'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2060
                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2061
            ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2062
                project showViews.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2063
                Project current:project
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2064
            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2065
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2066
        box open.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2067
        box destroy
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2068
    ]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2069
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2070
3408
12215beef308 new Icon in NewLauncher for Bug messages
penk
parents: 3401
diff changeset
  2071
startBugMessages
8643
e69b9268f450 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8625
diff changeset
  2072
    "open the bug reporter"
e69b9268f450 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8625
diff changeset
  2073
e69b9268f450 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8625
diff changeset
  2074
    Expecco::ExpeccoNetAPI notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2075
        Expecco::ExpeccoNetAPI reportCodeReview.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2076
        ^ self
8643
e69b9268f450 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8625
diff changeset
  2077
    ].
e69b9268f450 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8625
diff changeset
  2078
e69b9268f450 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8625
diff changeset
  2079
    BugGUI notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2080
        self openApplication:#BugGUI
8643
e69b9268f450 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8625
diff changeset
  2081
    ].
3408
12215beef308 new Icon in NewLauncher for Bug messages
penk
parents: 3401
diff changeset
  2082
12215beef308 new Icon in NewLauncher for Bug messages
penk
parents: 3401
diff changeset
  2083
    "Modified: / 17.10.1998 / 14:38:18 / cg"
12215beef308 new Icon in NewLauncher for Bug messages
penk
parents: 3401
diff changeset
  2084
!
12215beef308 new Icon in NewLauncher for Bug messages
penk
parents: 3401
diff changeset
  2085
3362
e02cc20dd18f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3326
diff changeset
  2086
startChangeSetBrowser
15699
292b370e5431 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15506
diff changeset
  2087
    "open a change Set Browser on the changes in the system"
292b370e5431 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15506
diff changeset
  2088
292b370e5431 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15506
diff changeset
  2089
    ^ 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
  2090
af054eb73ccf Fix in AbstractLauncherApplication>>startChangeSetBrowser: use preferred changeset browser
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15495
diff changeset
  2091
    "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
  2092
    "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
  2093
!
e02cc20dd18f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3326
diff changeset
  2094
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2095
startChangesBrowser
15700
b938df38917c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15699
diff changeset
  2096
    "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
  2097
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2098
    self openApplication:(UserPreferences current changesBrowserClass)
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2099
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2100
    "Modified: / 17.10.1998 / 14:38:18 / cg"
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2101
!
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2102
8298
644a1568da1f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8290
diff changeset
  2103
startInternationalLanguageTranslationEditor
644a1568da1f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8290
diff changeset
  2104
    "open the language-string editor (english/german/spanish etc.)"
644a1568da1f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8290
diff changeset
  2105
644a1568da1f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8290
diff changeset
  2106
    self openApplication:#'Tools::InternationalLanguageTranslationEditor'
644a1568da1f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8290
diff changeset
  2107
!
644a1568da1f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8290
diff changeset
  2108
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2109
startNewChangesBrowser
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2110
    "opens the new changeBrowser"
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2112
    self openApplication:#NewChangesBrowser
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2113
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2114
    "Created: / 6.6.1998 / 19:47:26 / cg"
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2115
!
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2116
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2117
startNewLauncher
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2118
    "opens the new launcher"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2119
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2120
    NewLauncher isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2121
        ^ 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
  2122
    ].
14075
710990d62d23 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13950
diff changeset
  2123
    Display withoutExitingOnLastCloseDo:[
710990d62d23 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13950
diff changeset
  2124
        NewLauncher openAt:(self window origin)
710990d62d23 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13950
diff changeset
  2125
    ].
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2126
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2127
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2128
startOldChangesBrowser
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2129
    "opens the old changeBrowser"
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2130
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2131
    self openApplication:#ChangesBrowser
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2132
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2133
    "Created: / 6.6.1998 / 19:47:26 / cg"
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2134
!
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2135
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2136
startOldLauncher
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2137
    "opens the old launcher"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2138
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2139
    Launcher isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2140
        ^ 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
  2141
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2142
    Launcher openAt:(self window origin)
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2143
2883
bd88b8b95b29 SUNit stuff added
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  2144
!
bd88b8b95b29 SUNit stuff added
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  2145
bd88b8b95b29 SUNit stuff added
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  2146
startSUnitTestRunner
11990
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  2147
    "open the configured SUnit test runner"
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  2148
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  2149
    self openApplication:(UserPreferences current testRunnerClass)
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  2150
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  2151
    "Modified: / 17.10.1998 / 14:38:18 / cg"
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  2152
!
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  2153
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  2154
startSUnitTestRunner1
2883
bd88b8b95b29 SUNit stuff added
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  2155
    "open the SUnit test runner"
bd88b8b95b29 SUNit stuff added
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  2156
3037
0d452d54bf04 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3035
diff changeset
  2157
    self openApplication:#TestRunner
2883
bd88b8b95b29 SUNit stuff added
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  2158
bd88b8b95b29 SUNit stuff added
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  2159
    "Modified: / 17.10.1998 / 14:38:18 / cg"
5016
8c5784f76fa3 SmaCCParsergenerator
Claus Gittinger <cg@exept.de>
parents: 4936
diff changeset
  2160
!
8c5784f76fa3 SmaCCParsergenerator
Claus Gittinger <cg@exept.de>
parents: 4936
diff changeset
  2161
8c5784f76fa3 SmaCCParsergenerator
Claus Gittinger <cg@exept.de>
parents: 4936
diff changeset
  2162
startSmaCCParserGenerator
8c5784f76fa3 SmaCCParsergenerator
Claus Gittinger <cg@exept.de>
parents: 4936
diff changeset
  2163
    "open the SmaCC-ParserGenerator UI"
8c5784f76fa3 SmaCCParsergenerator
Claus Gittinger <cg@exept.de>
parents: 4936
diff changeset
  2164
8c5784f76fa3 SmaCCParsergenerator
Claus Gittinger <cg@exept.de>
parents: 4936
diff changeset
  2165
    self openApplication:#'SmaCC::SmaCCParserGenerator'
8c5784f76fa3 SmaCCParsergenerator
Claus Gittinger <cg@exept.de>
parents: 4936
diff changeset
  2166
8c5784f76fa3 SmaCCParsergenerator
Claus Gittinger <cg@exept.de>
parents: 4936
diff changeset
  2167
    "Modified: / 17.10.1998 / 14:38:18 / cg"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2168
! !
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2169
4862
1838e1e01c92 method category rename
Claus Gittinger <cg@exept.de>
parents: 4859
diff changeset
  2170
!AbstractLauncherApplication methodsFor:'user actions-windows'!
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2171
12067
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2172
allTopViewsDo:aBlock
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2173
    |setOfViews currentScreen|
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2174
13882
212877cb97bf merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13761
diff changeset
  2175
    setOfViews := Project current views asIdentitySet.
12067
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2176
    setOfViews addAll:(Project defaultProject views).
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2177
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2178
    currentScreen := Screen current.
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2179
    setOfViews do:[:eachTopView |
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2180
        eachTopView device == currentScreen ifTrue:[
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2181
            aBlock value:eachTopView
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2182
        ]
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2183
    ]
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2184
!
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2185
2765
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2186
askForAnotherDisplay
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2187
    "ask for some other display"
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2188
3664
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  2189
    |displayName|
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  2190
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  2191
    displayName := Dialog request:'Display:' initialAnswer:(Screen default displayName).
6264
039dc5c1710b slight code cleanup
Claus Gittinger <cg@exept.de>
parents: 6233
diff changeset
  2192
    displayName isEmptyOrNil ifTrue:[^ nil].
3664
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  2193
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  2194
    ^ XWorkstation newDispatchingFor:displayName.
2765
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2195
!
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2196
13654
e33fa0be5522 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13637
diff changeset
  2197
bringAllWindowsOntoScreen
e33fa0be5522 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13637
diff changeset
  2198
    self allTopViewsDo:[:eachTopView | self bringWindowOntoScreen:eachTopView]
e33fa0be5522 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13637
diff changeset
  2199
e33fa0be5522 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13637
diff changeset
  2200
    "
e33fa0be5522 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13637
diff changeset
  2201
     Transcript topView application bringAllWindowsOntoScreen
e33fa0be5522 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13637
diff changeset
  2202
    "
e33fa0be5522 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13637
diff changeset
  2203
!
e33fa0be5522 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13637
diff changeset
  2204
16114
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2205
bringWindow:aWindow intoBounds:bounds
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2206
    "shift & resize a view to be completely inside bounds."
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2207
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2208
    |topView oldOrg newOrg oldCorner newCorner delta|
16114
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2209
    
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2210
    topView := aWindow topView.
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2211
    oldOrg := newOrg := topView origin.
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2212
    oldCorner := newCorner := topView corner. 
16114
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2213
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2214
    (bounds containsPoint:oldOrg) ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2215
        newOrg := bounds origin + (10@10).
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2216
        delta := newOrg - oldOrg.
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2217
        newCorner := oldCorner + delta.
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2218
    ].    
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2219
    (bounds containsPoint:newCorner) ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2220
        newCorner := bounds corner - (10@10).
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2221
        delta := newCorner - oldCorner.
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2222
        newOrg = oldOrg ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2223
            newOrg := newOrg + delta.
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2224
            (bounds containsPoint:newOrg) ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2225
                newOrg := bounds origin + (10@10).
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2226
            ].
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2227
        ].
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2228
    ].
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2229
    topView 
16114
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2230
        raiseDeiconified;
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2231
        origin:newOrg corner:newCorner.
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2232
!
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2233
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2234
bringWindowOntoScreen:aWindow 
16114
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2235
    "shift & resize a view to be visible.
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2236
     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
  2237
    
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2238
    |allBounds bounds myDevice|
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2239
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2240
    myDevice := self device.
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2241
    allBounds := myDevice monitorBoundsAt:aWindow center.
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2242
    allBounds notEmptyOrNil ifTrue:[
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2243
        bounds := allBounds 
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2244
                detect:[:bounds | bounds containsPoint:self window center ]
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2245
                ifNone:[ nil ].
16114
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2246
    ].
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2247
    bounds isNil ifTrue:[
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2248
        bounds := 0@0 extent:myDevice usableExtent.
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2249
    ].
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2250
    self bringWindow:aWindow intoBounds:bounds
12568
e992401c1f07 bring window onto screen
Claus Gittinger <cg@exept.de>
parents: 12500
diff changeset
  2251
!
e992401c1f07 bring window onto screen
Claus Gittinger <cg@exept.de>
parents: 12500
diff changeset
  2252
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2253
deIconifyAllWindows
13696
94a519c56f57 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13654
diff changeset
  2254
    self allTopViewsDo:[:eachTopView | eachTopView expand; raise].
94a519c56f57 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13654
diff changeset
  2255
    self window raise.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2256
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2257
    "
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2258
     Transcript topView application deIconifyAllWindows
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2259
    "
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2260
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2261
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2262
findAndDestroyWindow
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2263
    "find a window (by name) and destroy it"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2264
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2265
    |v|
4412
710b2097c588 dialog strings
Claus Gittinger <cg@exept.de>
parents: 4399
diff changeset
  2266
    v := self findWindow:'Select window to close:'.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2267
    v notNil ifTrue:[v destroy]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2268
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2269
2759
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2270
findAndMigrateWindow
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2271
    "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
  2272
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2273
    |possibleGroups v|
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2274
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2275
    possibleGroups := WindowGroup allInstances select:[:eachGroup |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2276
                                        eachGroup graphicsDevice == Screen current
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2277
                                        and:[eachGroup isModal not
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2278
                                        and:[eachGroup topViews size > 0]]].
6264
039dc5c1710b slight code cleanup
Claus Gittinger <cg@exept.de>
parents: 6233
diff changeset
  2279
    possibleGroups isEmpty ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2280
        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
  2281
        ^ self
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2282
    ].
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2283
4412
710b2097c588 dialog strings
Claus Gittinger <cg@exept.de>
parents: 4399
diff changeset
  2284
    v := self findWindow:'Select window to migrate:' windowGroupFilter:possibleGroups.
2759
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2285
    v notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2286
        self migrateWindow:v topView
2759
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2287
    ]
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2288
!
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2289
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2290
findAndMigrateWindowBack
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2291
    "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
  2292
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2293
    |possibleGroups v|
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2294
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2295
    possibleGroups := WindowGroup allInstances select:[:eachGroup |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2296
                                        eachGroup graphicsDevice ~~ Screen current
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2297
                                        and:[eachGroup isModal not
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2298
                                        and:[eachGroup topViews size > 0]]].
6264
039dc5c1710b slight code cleanup
Claus Gittinger <cg@exept.de>
parents: 6233
diff changeset
  2299
    possibleGroups isEmpty ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2300
        self information:'No windows are open on any other display.'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2301
        ^ self
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2302
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2303
4412
710b2097c588 dialog strings
Claus Gittinger <cg@exept.de>
parents: 4399
diff changeset
  2304
    v := self findWindow:'Select window to migrate back:' windowGroupFilter:possibleGroups.
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2305
    v notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2306
        v windowGroup migrateTo:(Screen current)
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2307
    ]
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2308
!
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2309
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2310
findAndRaiseWindow
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2311
    "find a window (by name) and raise it"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2312
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2313
    |v|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2314
4412
710b2097c588 dialog strings
Claus Gittinger <cg@exept.de>
parents: 4399
diff changeset
  2315
    v := self findWindow:'Select window to raise deiconified:'.
11417
3559223419d9 changed: #findAndRaiseWindow
Stefan Vogel <sv@exept.de>
parents: 11355
diff changeset
  2316
    v notNil ifTrue:[v raiseDeiconified; setForegroundWindow]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2317
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2318
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2319
fullScreenHardcopy
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2320
    "after a second (to allow redraw of views under menu ...),
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2321
     save the contents of the whole screen."
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2322
    
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2323
    |mySensor|
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2324
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2325
    mySensor := self window sensor.
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2326
    mySensor ctrlDown ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2327
        ^ self fullScreenHardcopyUngrabbed
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2328
    ].
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2329
    Processor 
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2330
        addTimedBlock:[ self saveScreenImage:(Image fromScreen) defaultName:'screen' ]
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2331
        afterSeconds:(mySensor shiftDown ifTrue:5 ifFalse:1)
3326
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  2332
!
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  2333
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  2334
fullScreenHardcopyUngrabbed
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  2335
    "after a second (to allow redraw of views under menu ...),
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  2336
     save the contents of the whole screen."
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  2337
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2338
    Processor
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2339
        addTimedBlock:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2340
                        |display image|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2341
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2342
                        display := Screen current.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2343
                        image := Image
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2344
                            fromScreen:(0@0 corner:(display extent))
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2345
                            on:display
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2346
                            grab:false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2347
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2348
                        self
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2349
                            saveScreenImage:image
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2350
                            defaultName:'screen'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2351
                      ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2352
        afterSeconds:(self window sensor shiftDown ifTrue:5 ifFalse:1)
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2353
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2354
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2355
hardcopyOfView: aView
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2356
    "after a second (to allow redraw of views under menu ...),
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2357
     save a view's contents as bitmap image."
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2358
12500
5e05cf44bd94 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12499
diff changeset
  2359
    |top|
5e05cf44bd94 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12499
diff changeset
  2360
5e05cf44bd94 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12499
diff changeset
  2361
    top := aView topView.
5e05cf44bd94 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12499
diff changeset
  2362
    top raiseDeiconified; makeFullyVisible.
5e05cf44bd94 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12499
diff changeset
  2363
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2364
    "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
  2365
    self enqueueDelayedAction:[
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2366
        Delay waitForSeconds:1.   "/ give view a chance to redraw itself.
12500
5e05cf44bd94 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12499
diff changeset
  2367
        self saveScreenImage:(Image fromView:top) defaultName:'hardcopy'
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2368
    ].
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2369
    aView windowGroup processExposeEvents
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2370
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2371
    "Created: / 27-04-2012 / 13:23:40 / cg"
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2372
!
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2373
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2374
iconifyAllWindows
12067
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2375
    self allTopViewsDo:[:eachTopView | eachTopView collapse]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2376
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2377
2765
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2378
migrateAllWindows
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2379
    "migrate all views to some other display"
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2380
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2381
    |anotherDisplay toMigrate|
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2382
3664
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  2383
    [
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2384
        anotherDisplay := self askForAnotherDisplay.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2385
        anotherDisplay isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2386
            ^ self.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2387
        ].
3664
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  2388
    ] on:Screen deviceOpenErrorSignal do:[:ex|
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2389
        ^ self warn:'Cannot open display: ', ex parameter.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2390
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2391
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2392
    toMigrate := WindowGroup allInstances
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2393
        select:[:each | each graphicsDevice == Screen current
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2394
                        and:[each topViews size > 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2395
                        and:[each isModal not]]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2396
               ].
2765
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2397
    toMigrate do:[:eachGroup |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2398
        eachGroup migrateTo:anotherDisplay
2765
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2399
    ]
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2400
!
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2401
2759
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2402
migrateWindow:aWindow
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2403
    "migrate a view to some other display"
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2404
16747
7e55266044ea #BUGFIX by stefan
Stefan Vogel <sv@exept.de>
parents: 16687
diff changeset
  2405
    aWindow isModal ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2406
        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
  2407
        ^ self
2778
1e4bf8bf1d37 block migration of a modalBox
Claus Gittinger <cg@exept.de>
parents: 2775
diff changeset
  2408
    ].
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2409
    self 
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2410
        migrateWindow:aWindow 
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2411
        withBackOption:(self confirm:'Show ''Return Back'' Button on the other display ?')
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2412
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2413
    "Modified (format): / 27-04-2012 / 13:15:23 / cg"
2775
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2414
!
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2415
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2416
migrateWindow:aWindow withBackOption:withBackOption
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2417
    "migrate a view to some other display"
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2418
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2419
    |anotherDisplay wg here b|
2765
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2420
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2421
    aWindow isTopView ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2422
        self information:'Cannot migrate this window'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2423
        ^ self
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2424
    ].
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2425
3664
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  2426
    [
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2427
        anotherDisplay := self askForAnotherDisplay.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2428
        anotherDisplay isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2429
            ^ self.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2430
        ].
3664
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  2431
    ] on:Screen deviceOpenErrorSignal do:[:ex|
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2432
        ^ self warn:'Cannot open display: ', ex parameter.
2759
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2433
    ].
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2434
2775
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2435
    wg := aWindow windowGroup.
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2436
    wg migrateTo:anotherDisplay.
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2437
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2438
    withBackOption ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2439
        here := Screen current.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2440
        b := Button onDevice:anotherDisplay.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2441
        b label:'Return window back to ' , here displayName.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2442
        b action:[ wg migrateTo:here. b destroy. ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2443
        b origin:0@0.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2444
        b open.
2775
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2445
    ].
2759
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2446
!
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2447
9364
be7f9957ef94 added: #openWindowTreeInspector
Claus Gittinger <cg@exept.de>
parents: 9330
diff changeset
  2448
openWindowTreeInspector
9932
f6d155d70650 changed: #openWindowTreeInspector
Claus Gittinger <cg@exept.de>
parents: 9875
diff changeset
  2449
    Tools::ViewTreeInspectorApplication isNil ifTrue:[
f6d155d70650 changed: #openWindowTreeInspector
Claus Gittinger <cg@exept.de>
parents: 9875
diff changeset
  2450
        Dialog warn:'Missing class: Tools::ViewTreeInspectorApplication'.
f6d155d70650 changed: #openWindowTreeInspector
Claus Gittinger <cg@exept.de>
parents: 9875
diff changeset
  2451
        ^ self.
f6d155d70650 changed: #openWindowTreeInspector
Claus Gittinger <cg@exept.de>
parents: 9875
diff changeset
  2452
    ].
14459
8bf63fa9cd85 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14445
diff changeset
  2453
    Tools::ViewTreeInspectorApplication openInPickModeAndRelease
9932
f6d155d70650 changed: #openWindowTreeInspector
Claus Gittinger <cg@exept.de>
parents: 9875
diff changeset
  2454
f6d155d70650 changed: #openWindowTreeInspector
Claus Gittinger <cg@exept.de>
parents: 9875
diff changeset
  2455
    "Modified: / 12-05-2011 / 10:15:39 / cg"
9364
be7f9957ef94 added: #openWindowTreeInspector
Claus Gittinger <cg@exept.de>
parents: 9330
diff changeset
  2456
!
be7f9957ef94 added: #openWindowTreeInspector
Claus Gittinger <cg@exept.de>
parents: 9330
diff changeset
  2457
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2458
screenHardcopy
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2459
    "after a second (to allow redraw of views under menu ...),
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2460
     let user specify a rectangular area on the screen
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2461
     and save its contents."
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2462
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2463
    Processor
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2464
        addTimedBlock:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2465
                        |area|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2466
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2467
                        [Screen current leftButtonPressed] whileTrue:[Delay waitForSeconds:0.05].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2468
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2469
                        area := Rectangle fromUser.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2470
                        (area width > 0 and:[area height > 0]) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2471
                            Delay waitForSeconds:2.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2472
                            self saveScreenImage:(Image fromScreen:area) defaultName:'hardcopy'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2473
                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2474
                      ]
15367
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2475
        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
  2476
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2477
    "Modified: / 18.8.1998 / 15:00:42 / cg"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2478
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2479
6069
6b2903a57572 edit-button in screen-area abzug
Claus Gittinger <cg@exept.de>
parents: 6040
diff changeset
  2480
screenHardcopyWithDelay
6b2903a57572 edit-button in screen-area abzug
Claus Gittinger <cg@exept.de>
parents: 6040
diff changeset
  2481
    "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
  2482
     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
  2483
     and save its contents."
6b2903a57572 edit-button in screen-area abzug
Claus Gittinger <cg@exept.de>
parents: 6040
diff changeset
  2484
8385
635607a0dcc4 changed #screenHardcopyWithDelay
Claus Gittinger <cg@exept.de>
parents: 8381
diff changeset
  2485
    |area|
635607a0dcc4 changed #screenHardcopyWithDelay
Claus Gittinger <cg@exept.de>
parents: 8381
diff changeset
  2486
635607a0dcc4 changed #screenHardcopyWithDelay
Claus Gittinger <cg@exept.de>
parents: 8381
diff changeset
  2487
    [Screen current leftButtonPressed] whileTrue:[Delay waitForSeconds:0.05].
635607a0dcc4 changed #screenHardcopyWithDelay
Claus Gittinger <cg@exept.de>
parents: 8381
diff changeset
  2488
15367
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2489
    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
  2490
    area := Rectangle fromUser.
635607a0dcc4 changed #screenHardcopyWithDelay
Claus Gittinger <cg@exept.de>
parents: 8381
diff changeset
  2491
    (area width > 0 and:[area height > 0]) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2492
        [
15367
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2493
            |oldLabel|
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2494
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2495
            oldLabel := self window label.
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2496
            10 to:4 by:-1 do:[:secs |
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2497
                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
  2498
                Screen current beep. 
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2499
                Delay waitForSeconds:1. 
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2500
            ].
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2501
            3 to:1 by:-1 do:[:secs |
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2502
                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
  2503
                Screen current beep. 
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2504
                Delay waitForSeconds:0.5. 
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2505
                Screen current beep. 
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2506
                Delay waitForSeconds:0.5.
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2507
            ].        
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2508
            self window label:oldLabel.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2509
            self saveScreenImage:(Image fromScreen:area) defaultName:'hardcopy'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2510
        ] fork
8385
635607a0dcc4 changed #screenHardcopyWithDelay
Claus Gittinger <cg@exept.de>
parents: 8381
diff changeset
  2511
    ]
6069
6b2903a57572 edit-button in screen-area abzug
Claus Gittinger <cg@exept.de>
parents: 6040
diff changeset
  2512
!
6b2903a57572 edit-button in screen-area abzug
Claus Gittinger <cg@exept.de>
parents: 6040
diff changeset
  2513
7977
c58175dd1ceb flyByWindowInfo
Claus Gittinger <cg@exept.de>
parents: 7945
diff changeset
  2514
showFlyByWindowInformation
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2515
    "show infos about window under the mouse pointer"
7977
c58175dd1ceb flyByWindowInfo
Claus Gittinger <cg@exept.de>
parents: 7945
diff changeset
  2516
7980
9da97ea4f99d changed #showFlyByWindowInformation
Claus Gittinger <cg@exept.de>
parents: 7977
diff changeset
  2517
    FlyByWindowInformation notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2518
        [
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2519
            FlyByWindowInformation shownInformationOfViewUnderMouseUntilButtonIsPressed
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2520
        ] fork.
7980
9da97ea4f99d changed #showFlyByWindowInformation
Claus Gittinger <cg@exept.de>
parents: 7977
diff changeset
  2521
    ]
7977
c58175dd1ceb flyByWindowInfo
Claus Gittinger <cg@exept.de>
parents: 7945
diff changeset
  2522
!
c58175dd1ceb flyByWindowInfo
Claus Gittinger <cg@exept.de>
parents: 7945
diff changeset
  2523
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2524
startWindowTreeView
2371
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  2525
    "open a windowTree (on a picked topView)"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2526
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2527
    |v|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2528
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2529
    WindowTreeView isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2530
        ^ 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
  2531
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2532
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2533
    v := self pickAView.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2534
    v notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2535
        WindowTreeView openOn:v topView
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2536
    ]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2537
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2538
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2539
2371
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  2540
startWindowTreeViewForAll
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  2541
    "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
  2542
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  2543
    WindowTreeView isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2544
        ^ 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
  2545
    ].
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  2546
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  2547
    WindowTreeView openOnAll
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  2548
!
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  2549
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2550
viewBrowse
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2551
    "let user pick a view and browse its Application class. 
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2552
     Of course, only smalltalk views are allowed"
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2553
14238
fb35cdfdc677 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14183
diff changeset
  2554
    |v app appClass browser|
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2555
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2556
    (v := self pickAView) notNil ifTrue:[
14238
fb35cdfdc677 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14183
diff changeset
  2557
        browser := UserPreferences browserClass.
fb35cdfdc677 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14183
diff changeset
  2558
        (app := v application) notNil ifTrue:[
fb35cdfdc677 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14183
diff changeset
  2559
            appClass := app class theMetaclass.
fb35cdfdc677 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14183
diff changeset
  2560
            (appClass includesSelector:#windowSpec) ifTrue:[
fb35cdfdc677 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14183
diff changeset
  2561
                browser openInMethod:(appClass compiledMethodAt:#windowSpec)
fb35cdfdc677 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14183
diff changeset
  2562
            ]
fb35cdfdc677 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14183
diff changeset
  2563
        ] ifFalse:[
fb35cdfdc677 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14183
diff changeset
  2564
            (app ? v) browse
fb35cdfdc677 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14183
diff changeset
  2565
        ]
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2566
    ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2567
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2568
    "Created: / 30-06-2011 / 22:59:03 / cg"
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2569
!
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2570
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2571
viewDestroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2572
    "let user pick a view and destroy it.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2573
     Even allow destroying non-smalltalk views
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2574
     (also for views which I forgot due to some error)"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2575
9805
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2576
    |screen v id i c|
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2577
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2578
    Delay waitForSeconds:1.
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2579
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2580
    i := self class cross2Icon.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2581
    i isNil ifTrue:[
9805
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2582
        c := Cursor crossHair
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2583
    ] ifFalse:[
9805
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2584
        c := Cursor fromImage:i
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2585
    ].
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2586
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2587
    screen := Screen current.
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2588
    id := screen viewIdFromPoint:(screen pointFromUserShowing:c).
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2589
    (v := screen viewFromId:id) notNil ifTrue:[
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2590
        v topView destroy.
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2591
        ^ self
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2592
    ].
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2593
    id = screen rootView id ifTrue:[
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2594
        ^ self
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2595
    ].
16756
673316b94fbb #OTHER by mawalch
mawalch
parents: 16749
diff changeset
  2596
    (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
  2597
    ifTrue:[
9805
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2598
        screen destroyView:nil withId:id
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2599
    ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2600
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2601
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2602
viewHardcopy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2603
    "after a second (to allow redraw of views under menu ...),
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2604
     let user specify a view and save its contents."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2605
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2606
    Processor
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2607
        addTimedBlock:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2608
                        |v|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2609
                        (v := Screen current viewFromUser) notNil ifTrue:[
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2610
                            self hardcopyOfView: v
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2611
                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2612
                      ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2613
        afterSeconds:(self window sensor shiftDown ifTrue:5 ifFalse:1)
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2614
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2615
    "Modified: / 27-04-2012 / 13:24:23 / cg"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2616
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2617
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2618
viewInspect
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2619
    "let user pick a view and inspect it. 
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2620
     Of course, only smalltalk views are allowed"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2621
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2622
    |v|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2623
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2624
    (v := self pickAView) notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2625
        v inspect
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2626
    ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2627
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2628
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2629
viewMigrate
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2630
    "let user pick a view and migrate it to some other display.
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2631
     Only smalltalk views are allowed"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2632
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2633
    |v|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2634
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2635
    (v := self pickAView) notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2636
        self migrateWindow:v topView
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2637
    ]
6032
c9ff68a79be2 Move #widgetHardcopy from NewLauncher to AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 6019
diff changeset
  2638
!
c9ff68a79be2 Move #widgetHardcopy from NewLauncher to AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 6019
diff changeset
  2639
14571
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2640
viewSelectAndShrink
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2641
    "let user pick a view and shrink it to a reasonable size
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2642
     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
  2643
     which have their resize handle hidden or unreachable."
14571
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2644
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2645
    |v|
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2646
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2647
    (v := self pickAView) notNil ifTrue:[
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2648
        v topView 
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2649
            origin:50@50 extent:200@200;
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2650
            raise
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2651
    ]
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2652
!
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2653
6032
c9ff68a79be2 Move #widgetHardcopy from NewLauncher to AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 6019
diff changeset
  2654
widgetHardcopy
c9ff68a79be2 Move #widgetHardcopy from NewLauncher to AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 6019
diff changeset
  2655
    "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
  2656
     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
  2657
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2658
    Processor
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2659
        addTimedBlock:
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2660
            [
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2661
                |v|
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2662
                (v := Screen current viewFromUser) notNil ifTrue:[
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2663
                    self saveScreenImage:(Image fromView:v) defaultName:'hardcopy'
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2664
                ]
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2665
            ]
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2666
        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
  2667
c9ff68a79be2 Move #widgetHardcopy from NewLauncher to AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 6019
diff changeset
  2668
    "Created: / 21.8.1998 / 20:44:12 / cg"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2669
! !
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2670
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2671
!AbstractLauncherApplication::LauncherDialogs class methodsFor:'dialogs'!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2672
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2673
communicationsSettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  2674
    "open a dialog on communications settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  2675
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2676
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2677
    |box check in resources y acceptChannel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2678
     hasRDoitServer rDoitServerPort
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2679
     rDoitsEnabled rDoitLogging rDoitErrorLogging rDoitErrorDebugging
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2680
     org_rDoitsEnabled org_rDoitLogging org_rDoitErrorLogging org_rDoitErrorDebugging org_rDoitServerPort
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2681
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2682
     hasRemoteBrowsingSupport remoteBrowsingEnabled org_remoteBrowsingEnabled
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2683
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2684
     hasWindowMigrationServer windowMigrationAuthenticate windowMigrationPassword
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2685
     windowMigrationEnabled
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2686
     org_windowMigrationEnabled org_windowMigrationAuthenticate org_windowMigrationPassword
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2687
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2688
     hasHTTPServer httpServerRunning httpServerFileRoot httpServerHomeURL
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2689
     httpServerPort httpServerLogFile hasSwiki swikiEnabled swikiRoot
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2690
     allowEmbedded hasSoap soapEnabled
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2691
     org_httpServerRunning org_httpServerFileRoot org_httpServerHomeURL
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2692
     org_httpServerPort org_swikiRoot org_swikiEnabled org_httpServerLogFile
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2693
     org_allowEmbedded org_soapEnabled
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2694
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2695
     osiACSEPresent osiROSEPresent osiCMISEPresent
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2696
     osiACSEErrorLogging osiACSEConnectionLogging osiACSEDataLogging
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2697
     osiROSEErrorLogging osiROSEResponseLogging osiROSEInvokationLogging
4872
b8ab742630af *** empty log message ***
penk
parents: 4863
diff changeset
  2698
     osiCMISEErrorLogging osiCMISEMessageLogging defaultServer
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2699
    |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2700
5048
99fed3febf6f instable state
penk
parents: 5033
diff changeset
  2701
    self warn:'Please use HTTPServer Settings in the new SettingsDialog'.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2702
    acceptChannel := false asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2703
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2704
    resources := self owningClass classResources.
4872
b8ab742630af *** empty log message ***
penk
parents: 4863
diff changeset
  2705
    defaultServer := HTTPServer defaultServer.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2706
    "/
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2707
    "/ extract relevant remoteBrowsing settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2708
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2709
    remoteBrowsingEnabled := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2710
    (hasRemoteBrowsingSupport := SmalltalkShareServer notNil) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2711
        SmalltalkShareServer isLoaded ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2712
            remoteBrowsingEnabled := SmalltalkShareServer serverRunning.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2713
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2714
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2715
    org_remoteBrowsingEnabled := remoteBrowsingEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2716
    remoteBrowsingEnabled := remoteBrowsingEnabled asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2717
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2718
    "/
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2719
    "/ extract relevant windowMigration settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2720
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2721
    windowMigrationEnabled := windowMigrationAuthenticate := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2722
    (hasWindowMigrationServer := WindowMigrationServer notNil) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2723
        WindowMigrationServer isLoaded ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2724
            windowMigrationEnabled := WindowMigrationServer serverRunning.
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
        windowMigrationPassword := WindowMigrationServer password.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2727
        windowMigrationAuthenticate := windowMigrationPassword notNil.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2728
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2729
    org_windowMigrationEnabled := windowMigrationEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2730
    windowMigrationEnabled := windowMigrationEnabled asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2731
    org_windowMigrationAuthenticate := windowMigrationAuthenticate.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2732
    windowMigrationAuthenticate := windowMigrationAuthenticate asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2733
    org_windowMigrationPassword := windowMigrationPassword.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2734
    windowMigrationPassword := windowMigrationPassword asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2735
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2736
    "/
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2737
    "/ extract relevant rdoit settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2738
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2739
    rDoitsEnabled := rDoitLogging := rDoitErrorLogging := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2740
    (hasRDoitServer := RDoItServer notNil) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2741
        RDoItServer isLoaded ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2742
            rDoitsEnabled := RDoItServer serverRunning.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2743
            rDoitLogging := RDoItServer isLogging.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2744
            rDoitErrorLogging := RDoItServer isErrorLogging.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2745
            rDoitErrorDebugging := RDoItServer isErrorCatching not.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2746
            rDoitServerPort := RDoItServer defaultPortNumberOrPath.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2747
        ]
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2748
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2749
    org_rDoitsEnabled := rDoitsEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2750
    org_rDoitLogging := rDoitLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2751
    org_rDoitErrorLogging := rDoitErrorLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2752
    org_rDoitErrorDebugging := rDoitErrorDebugging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2753
    org_rDoitServerPort := rDoitServerPort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2754
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2755
    rDoitServerPort := rDoitServerPort asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2756
    rDoitsEnabled := rDoitsEnabled asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2757
    rDoitLogging := rDoitLogging asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2758
    rDoitErrorLogging := rDoitErrorLogging asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2759
    rDoitErrorDebugging := rDoitErrorDebugging asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2760
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2761
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2762
    "/ extract http-server settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2763
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2764
    hasHTTPServer := httpServerRunning := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2765
    (hasHTTPServer := HTTPServer notNil) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2766
        HTTPServer isLoaded ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2767
            httpServerRunning := HTTPServer isRunning.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2768
            "/ httpServerFileRoot := HTTPServer fileRoot.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2769
            httpServerHomeURL := HTTPServer homeURL.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2770
            httpServerPort := HTTPServer port.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2771
            httpServerLogFile := HTTPServer logFile.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2772
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2773
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2774
    org_httpServerRunning := httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2775
    httpServerRunning := httpServerRunning asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2776
    org_httpServerFileRoot := httpServerFileRoot.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2777
    httpServerFileRoot := httpServerFileRoot asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2778
    org_httpServerHomeURL := httpServerHomeURL.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2779
    httpServerHomeURL := httpServerHomeURL asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2780
    org_httpServerPort := httpServerPort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2781
    httpServerPort := httpServerPort asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2782
    org_httpServerLogFile := httpServerLogFile.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2783
    httpServerLogFile := httpServerLogFile asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2784
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2785
    httpServerRunning
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2786
        onChangeEvaluate:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2787
            "/ httpServerFileRoot value:(HTTPServer fileRoot).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2788
            httpServerHomeURL value:(HTTPServer homeURL).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2789
            httpServerPort value:(HTTPServer port).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2790
            httpServerLogFile value:(HTTPServer logFile)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2791
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2792
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2793
    hasSwiki := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2794
    swikiEnabled := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2795
    soapEnabled := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2796
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2797
    (hasSwiki := PWS::SwikiAction notNil) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2798
        PWS::SwikiAction isLoaded ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2799
            (HTTPServer notNil and:[HTTPServer isLoaded]) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2800
                swikiEnabled := (defaultServer notNil and:[defaultServer hasServiceForServiceClass:SwikiAction]).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2801
                swikiRoot := PWS::SwikiAction serverDirectory.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2802
            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2803
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2804
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2805
    (hasSoap := SOAP::SoapHttpModule notNil) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2806
        SOAP::SoapHttpModule isLoaded ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2807
            (HTTPServer notNil and:[HTTPServer isLoaded]) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2808
                soapEnabled := HTTPServer soapEnabled.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2809
            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2810
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2811
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2812
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2813
    org_swikiRoot := swikiRoot.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2814
    org_swikiEnabled := swikiEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2815
    org_soapEnabled := soapEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2816
    swikiRoot := swikiRoot asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2817
    swikiEnabled := swikiEnabled asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2818
    soapEnabled := soapEnabled asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2819
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2820
    swikiEnabled
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2821
        onChangeEvaluate:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2822
            swikiRoot value:(PWS::SwikiAction serverDirectory).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2823
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2824
4872
b8ab742630af *** empty log message ***
penk
parents: 4863
diff changeset
  2825
5024
a52b4b0941b5 unstable state
penk
parents: 5016
diff changeset
  2826
    allowEmbedded := defaultServer notNil and:[defaultServer hasServiceForServiceClass:HTTPEmbeddedApplicationService].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2827
    org_allowEmbedded := allowEmbedded.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2828
    allowEmbedded := allowEmbedded asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2829
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2830
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2831
    "/ osi settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2832
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2833
    osiACSEPresent := OSI::ACSE notNil and:[OSI::ACSE isLoaded].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2834
    osiROSEPresent := OSI::ROSE notNil and:[OSI::ROSE isLoaded].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2835
    osiCMISEPresent := OSI::CMISE notNil and:[OSI::CMISE isLoaded].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2836
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2837
    osiACSEPresent ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2838
        osiACSEErrorLogging := OSI::ACSE errorLogging asValue.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2839
        osiACSEConnectionLogging := OSI::ACSE connectionLogging asValue.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2840
        osiACSEDataLogging :=  OSI::ACSE dataLogging asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2841
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2842
    osiROSEPresent ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2843
        osiROSEErrorLogging := OSI::ROSE errorLogging asValue.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2844
        osiROSEInvokationLogging := OSI::ROSE invocationLogging asValue.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2845
        osiROSEResponseLogging :=  OSI::ROSE responseLogging asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2846
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2847
    osiCMISEPresent ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2848
        osiCMISEErrorLogging := OSI::CMISE errorLogging asValue.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2849
        osiCMISEMessageLogging := OSI::CMISE messageLogging asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2850
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2851
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2852
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2853
    "/ create a box on those values ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2854
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2855
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2856
    box label:(resources string:'Communication settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2857
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2858
    box addTextLabel:(resources string:'Remote browsing').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2859
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2860
    check := box addCheckBox:(resources string:'Remote browsing enabled') on:remoteBrowsingEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2861
    hasRemoteBrowsingSupport ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2862
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2863
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2864
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2865
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2866
    box addTextLabel:(resources string:'Window migration').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2867
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2868
    check := box addCheckBox:(resources string:'Window migration enabled') on:windowMigrationEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2869
    hasWindowMigrationServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2870
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2871
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2872
    check := box addCheckBox:(resources string:'Password check') on:windowMigrationAuthenticate.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2873
    check enableChannel:windowMigrationEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2874
    hasWindowMigrationServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2875
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2876
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2877
    box leftIndent:20.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2878
    in := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2879
            addLabelledInputField:(resources string:'Password:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2880
            adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2881
            on:nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2882
            tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2883
            separateAtX:0.3.
8074
c6e0ef5fa300 use bePassword
Claus Gittinger <cg@exept.de>
parents: 7980
diff changeset
  2884
    in bePassword.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2885
    in model:windowMigrationPassword.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2886
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2887
    in enableChannel:windowMigrationAuthenticate.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2888
    box leftIndent:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2889
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2890
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2891
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2892
    box addTextLabel:'RDoIt Server'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2893
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2894
    check := box addCheckBox:(resources string:'Remote doits enabled') on:rDoitsEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2895
    hasRDoitServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2896
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2897
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2898
    box leftIndent:20.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2899
    rDoitsEnabled onChangeEvaluate:[ rDoitsEnabled value ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2900
                                        rDoitServerPort value isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2901
                                            rDoitServerPort value:(RDoItServer defaultPortNumberOrPath printString).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2902
                                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2903
                                     ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2904
                                   ].
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2905
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2906
    in := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2907
            addLabelledInputField:(resources string:'Port:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2908
            adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2909
            on:nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2910
            tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2911
            separateAtX:0.3.
5033
2b52a33c7eee allow for rdoitPort to be a string (for ud sockets)
Claus Gittinger <cg@exept.de>
parents: 5032
diff changeset
  2912
    "/ in converter:(PrintConverter new initForNumber).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2913
    in model:rDoitServerPort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2914
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2915
    in enableChannel:rDoitsEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2916
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2917
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2918
    check := box addCheckBox:(resources string:'Log errors') on:rDoitErrorLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2919
    check width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2920
    check enableChannel:rDoitsEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2921
    hasRDoitServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2922
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2923
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2924
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2925
    check := box addCheckBox:(resources string:'Log requests') on:rDoitLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2926
    check left:0.4; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2927
    check enableChannel:rDoitsEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2928
    hasRDoitServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2929
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2930
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2931
    check := box addCheckBox:(resources string:'Debug errors') on:rDoitErrorDebugging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2932
    check width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2933
    check enableChannel:rDoitsEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2934
    hasRDoitServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2935
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2936
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2937
    box leftIndent:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2938
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2939
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2940
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2941
    box addTextLabel:'HTTP Server'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2942
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2943
    check := box addCheckBox:(resources string:'Serving HTTP Requests') on:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2944
    hasHTTPServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2945
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2946
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2947
    box leftIndent:20.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2948
    in := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2949
            addLabelledInputField:(resources string:'Port:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2950
            adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2951
            on:nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2952
            tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2953
            separateAtX:0.3.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2954
    in converter:(PrintConverter new initForNumber).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2955
    in model:httpServerPort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2956
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2957
    in enableChannel:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2958
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2959
    in := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2960
            addLabelledInputField:(resources string:'Log File:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2961
            adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2962
            on:httpServerLogFile
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2963
            tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2964
            separateAtX:0.3.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2965
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2966
    in enableChannel:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2967
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2968
"/    in := box
5169
69b73214504d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5153
diff changeset
  2969
"/            addLabelledInputField:(resources string:'File Root:')
69b73214504d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5153
diff changeset
  2970
"/            adjust:#right
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2971
"/            on:httpServerFileRoot
5169
69b73214504d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5153
diff changeset
  2972
"/            tabable:true
69b73214504d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5153
diff changeset
  2973
"/            separateAtX:0.3.
69b73214504d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5153
diff changeset
  2974
"/    in acceptChannel:acceptChannel.
69b73214504d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5153
diff changeset
  2975
"/    in enableChannel:httpServerRunning.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2976
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2977
    in := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2978
            addLabelledInputField:(resources string:'Home URL:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2979
            adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2980
            on:httpServerHomeURL
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2981
            tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2982
            separateAtX:0.3.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2983
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2984
    in enableChannel:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2985
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2986
    check := box addCheckBox:(resources string:'Swiki enabled') on:swikiEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2987
    hasHTTPServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2988
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2989
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2990
    check enableChannel:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2991
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2992
"/    box leftIndent:40.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2993
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2994
    in := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2995
            addLabelledInputField:(resources string:'SwikiRoot:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2996
            adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2997
            on:swikiRoot
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2998
            tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2999
            separateAtX:0.3.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3000
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3001
    in enableChannel:(BlockValue forLogical:httpServerRunning and:swikiEnabled).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3002
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3003
    check := box addCheckBox:(resources string:'Allow embedded ST applications') on:allowEmbedded.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3004
    hasHTTPServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3005
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3006
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3007
    check enableChannel:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3008
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3009
    check := box addCheckBox:(resources string:'Soap enabled') on:soapEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3010
    hasHTTPServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3011
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3012
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3013
    check enableChannel:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3014
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3015
    box leftIndent:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3016
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3017
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3018
    box addTextLabel:(resources string:'OSI Protocols (addOn package)').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3019
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3020
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3021
    check := box addCheckBox:(resources string:'Log %1 Errors' with:'ACSE') on:osiACSEErrorLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3022
    check width:0.33.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3023
    osiACSEPresent ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3024
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3025
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3026
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3027
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3028
    check := box addCheckBox:(resources string:'Connections') on:osiACSEConnectionLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3029
    osiACSEPresent ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3030
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3031
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3032
    check left:0.33; width:0.33.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3033
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3034
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3035
    check := box addCheckBox:(resources string:'Data Xfer') on:osiACSEDataLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3036
    osiACSEPresent ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3037
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3038
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3039
    check left:0.66; width:0.34.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3040
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3041
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3042
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3043
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3044
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3045
    check := box addCheckBox:(resources string:'Log %1 Errors' with:'ROSE') on:osiROSEErrorLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3046
    osiROSEPresent ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3047
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3048
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3049
    check width:0.33.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3050
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3051
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3052
    check := box addCheckBox:(resources string:'Invoactions') on:osiROSEInvokationLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3053
    osiROSEPresent ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3054
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3055
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3056
    check left:0.33; width:0.33.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3057
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3058
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3059
    check := box addCheckBox:(resources string:'Responses') on:osiROSEResponseLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3060
    osiROSEPresent ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3061
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3062
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3063
    check left:0.66; width:0.34.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3064
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3065
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3066
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3067
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3068
    check := box addCheckBox:(resources string:'Log %1 Errors' with:'CMISE') on:osiCMISEErrorLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3069
    osiCMISEPresent ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3070
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3071
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3072
    check width:0.33.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3073
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3074
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3075
    check := box addCheckBox:(resources string:'Messages') on:osiCMISEMessageLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3076
    osiCMISEPresent ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3077
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3078
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3079
    check left:0.33; width:0.33.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3080
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3081
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3082
    box addHorizontalLine.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3083
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3084
        addHelpButtonFor:'Launcher/communicationsSettings.html';
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3085
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3086
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3087
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3088
    "/ show the box ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3089
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3090
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3091
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3092
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3093
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3094
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3095
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3096
        acceptChannel value:false; value:true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3097
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3098
        hasRemoteBrowsingSupport ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3099
            remoteBrowsingEnabled := remoteBrowsingEnabled value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3100
            (remoteBrowsingEnabled ~~ org_remoteBrowsingEnabled) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3101
                remoteBrowsingEnabled ~~ SmalltalkShareServer serverRunning ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3102
                    remoteBrowsingEnabled ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3103
                        SmalltalkShareServer killAll
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3104
                    ] ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3105
                        SmalltalkShareServer start.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3106
                        "/ must wait a bit; give it a chance to
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3107
                        "/ really start (before checking)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3108
                        Delay waitForSeconds:0.5.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3109
                        SmalltalkShareServer serverRunning ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3110
                            self warn:'SmalltalkShareServer startup failed (see stderr).'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3111
                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3112
                    ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3113
                ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3114
            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3115
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3116
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3117
        hasWindowMigrationServer ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3118
            windowMigrationEnabled := windowMigrationEnabled value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3119
            windowMigrationAuthenticate := windowMigrationAuthenticate value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3120
            windowMigrationPassword := windowMigrationPassword value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3121
            (windowMigrationEnabled ~~ org_windowMigrationEnabled
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3122
            or:[windowMigrationAuthenticate ~~ org_windowMigrationAuthenticate
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3123
            or:[windowMigrationPassword ~~ org_windowMigrationPassword]])  ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3124
                windowMigrationAuthenticate ~~ org_windowMigrationAuthenticate ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3125
                    windowMigrationAuthenticate ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3126
                        WindowMigrationServer password:nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3127
                    ] ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3128
                        WindowMigrationServer password:windowMigrationPassword
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3129
                    ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3130
                ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3131
                windowMigrationEnabled ~~ WindowMigrationServer serverRunning ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3132
                    windowMigrationEnabled ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3133
                        WindowMigrationServer stop
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3134
                    ] ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3135
                        WindowMigrationServer start.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3136
                        "/ must wait a bit; give it a chance to
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3137
                        "/ really start (before checking)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3138
                        Delay waitForSeconds:0.5.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3139
                        WindowMigrationServer serverRunning ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3140
                            self warn:'WindowMigrationServer startup failed (see stderr).'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3141
                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3142
                    ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3143
                ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3144
            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3145
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3146
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3147
        hasRDoitServer ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3148
            (rDoitLogging value ~~ org_rDoitLogging
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3149
            or:[rDoitErrorDebugging value ~~ org_rDoitErrorDebugging
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3150
            or:[rDoitErrorLogging value ~~ org_rDoitErrorLogging
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3151
            or:[rDoitsEnabled value ~~ org_rDoitsEnabled
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3152
            or:[rDoitServerPort value ~~ org_rDoitServerPort]]]]) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3153
                (Integer readFrom:rDoitServerPort value onError:nil) isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3154
                    RDoItServer defaultPortNumberOrPath:rDoitServerPort value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3155
                ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3156
                    RDoItServer defaultPortNumberOrPath:(Integer readFrom:rDoitServerPort value onError:nil).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3157
                ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3158
                RDoItServer logging:(rDoitLogging value).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3159
                RDoItServer errorLogging:(rDoitErrorLogging value).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3160
                RDoItServer errorCatching:(rDoitErrorDebugging value not).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3161
                rDoitsEnabled := rDoitsEnabled value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3162
                rDoitsEnabled ~~ RDoItServer serverRunning ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3163
                    rDoitsEnabled ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3164
                        RDoItServer stop
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3165
                    ] ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3166
                        RDoItServer start.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3167
                        "/ must wait a bit; give it a chance to
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3168
                        "/ really start (before checking)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3169
                        Delay waitForSeconds:0.5.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3170
                        RDoItServer serverRunning ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3171
                            self warn:'RDoit startup failed (see stderr).'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3172
                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3173
                    ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3174
                ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3175
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3176
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3177
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3178
        (hasHTTPServer and:[HTTPServer isLoaded]) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3179
            httpServerPort := httpServerPort value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3180
            org_httpServerPort ~= httpServerPort ifTrue:[
5024
a52b4b0941b5 unstable state
penk
parents: 5016
diff changeset
  3181
"/                HTTPServer port:httpServerPort.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3182
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3183
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3184
            httpServerFileRoot := httpServerFileRoot value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3185
            httpServerFileRoot size == 0 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3186
                httpServerFileRoot := nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3187
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3188
            org_httpServerFileRoot ~= httpServerFileRoot ifTrue:[
5024
a52b4b0941b5 unstable state
penk
parents: 5016
diff changeset
  3189
"/                HTTPServer fileRoot:httpServerFileRoot.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3190
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3191
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3192
            httpServerLogFile := httpServerLogFile value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3193
            httpServerLogFile size == 0 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3194
                httpServerLogFile := nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3195
            ].
5024
a52b4b0941b5 unstable state
penk
parents: 5016
diff changeset
  3196
"/            org_httpServerLogFile ~= httpServerLogFile ifTrue:[
a52b4b0941b5 unstable state
penk
parents: 5016
diff changeset
  3197
"/                HTTPServer logFile:httpServerLogFile.
a52b4b0941b5 unstable state
penk
parents: 5016
diff changeset
  3198
"/            ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3199
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3200
            httpServerHomeURL := httpServerHomeURL value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3201
            httpServerHomeURL size == 0 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3202
                httpServerHomeURL := nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3203
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3204
            org_httpServerHomeURL ~= httpServerHomeURL ifTrue:[
5024
a52b4b0941b5 unstable state
penk
parents: 5016
diff changeset
  3205
"/                HTTPServer defaultHomeURL:httpServerHomeURL.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3206
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3207
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3208
            httpServerRunning value ~~ org_httpServerRunning ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3209
                httpServerRunning value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3210
                    HTTPServer startServer
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3211
                ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3212
                    HTTPServer stopServer
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3213
                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3214
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3215
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3216
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3217
        hasSwiki ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3218
            swikiRoot := swikiRoot value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3219
            swikiRoot size == 0 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3220
                swikiRoot := nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3221
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3222
            org_swikiRoot ~= swikiRoot ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3223
                PWS::ServerAction serverDirectory:swikiRoot.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3224
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3225
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3226
            swikiEnabled value ~~ org_swikiEnabled ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3227
                swikiEnabled value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3228
                    HTTPServer setupMySwiki
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3229
                ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3230
                    HTTPServer disableMySwiki
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3231
                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3232
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3233
            allowEmbedded value ~~ org_allowEmbedded ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3234
                defaultServer notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3235
                    HTTPEmbeddedApplicationService registerServiceOn:defaultServer.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3236
                ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3237
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3238
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3239
        hasSoap ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3240
            soapEnabled value ~~ org_soapEnabled ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3241
                defaultServer notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3242
                    soapEnabled value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3243
                        defaultServer setupSoap
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3244
                    ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3245
                        defaultServer disableSoap
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3246
                    ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3247
                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3248
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3249
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3250
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3251
        osiACSEPresent ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3252
            OSI::ACSE errorLogging:osiACSEErrorLogging value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3253
            OSI::ACSE connectionLogging:osiACSEConnectionLogging value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3254
            OSI::ACSE dataLogging:osiACSEDataLogging value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3255
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3256
        osiROSEPresent ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3257
            OSI::ROSE errorLogging:osiROSEErrorLogging value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3258
            OSI::ROSE invocationLogging:osiROSEInvokationLogging value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3259
            OSI::ROSE responseLogging:osiROSEResponseLogging value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3260
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3261
        osiCMISEPresent ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3262
            OSI::CMISE errorLogging:osiCMISEErrorLogging value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3263
            OSI::CMISE messageLogging:osiCMISEMessageLogging value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3264
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3265
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3266
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3267
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3268
    "Modified: / 28.6.1999 / 15:44:35 / stefan"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3269
    "Modified: / 20.1.2000 / 19:14:18 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3270
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3271
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3272
compilerSettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  3273
    "open a dialog on compiler related settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  3274
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3275
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3276
    |box warnings warnSTX warnUnderscore warnDollar warnOldStyle warnUnusedVars
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3277
     allowDollar allowUnderscore allowSqueakExtensions allowQualifiedNames
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3278
     allowDolphinExtensions allowOldStyleAssignment allowReservedWordsAsSelectors
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3279
     immutableArrays
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3280
     warnSTXBox warnUnderscoreBox warnOldStyleBox warnCommonMistakes warnCommonMistakesBox
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3281
     warnCompatibility warnCompatibilityBox warnDollarBox warnUnusedVarsBox
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3282
     stcCompilation compilationList stcCompilationOptions
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3283
     historyLines fullHistoryUpdate
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3284
     catchMethodRedefs catchClassRedefs keepSourceOptions keepSource
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3285
     constantFoldingOptions constantFolding justInTimeCompilation
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3286
     warnEnabler check component oldIndent supportsJustInTimeCompilation y
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3287
     y2 fullDebugSupport yMax
5277
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  3288
     compileLazy loadBinaries canLoadBinaries strings idx
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3289
     resources stcSetupButt|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3290
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3291
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3292
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3293
    canLoadBinaries := ObjectFileLoader notNil and:[ObjectFileLoader canLoadObjectFiles].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3294
    loadBinaries := Smalltalk loadBinaries asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3295
    compileLazy := Autoload compileLazy asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3296
6538
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3297
    warnings := ParserFlags warnings asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3298
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3299
    warnSTX := ParserFlags warnSTXSpecials asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3300
    warnUnderscore := ParserFlags warnUnderscoreInIdentifier asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3301
    warnDollar := ParserFlags warnDollarInIdentifier asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3302
    warnOldStyle := ParserFlags warnOldStyleAssignment asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3303
    warnCommonMistakes := ParserFlags warnCommonMistakes asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3304
    warnCompatibility := ParserFlags warnPossibleIncompatibilities asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3305
    warnUnusedVars := ParserFlags warnUnusedVars asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3306
    allowUnderscore := ParserFlags allowUnderscoreInIdentifier asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3307
    allowDollar := ParserFlags allowDollarInIdentifier asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3308
    allowSqueakExtensions := ParserFlags allowSqueakExtensions asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3309
    allowDolphinExtensions := ParserFlags allowDolphinExtensions asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3310
    allowQualifiedNames := ParserFlags allowQualifiedNames asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3311
    allowOldStyleAssignment := ParserFlags allowOldStyleAssignment asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3312
    allowReservedWordsAsSelectors := ParserFlags allowReservedWordsAsSelectors asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3313
    immutableArrays := ParserFlags arraysAreImmutable asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3314
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3315
    constantFoldingOptions := #( nil #level1 #level2 #full ).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3316
    constantFolding := SelectionInList new list:(resources array:#('disabled' 'level1 (always safe)' 'level2 (usually safe)' 'full')).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3317
    constantFolding selectionIndex:3.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3318
5277
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  3319
    stcCompilationOptions := #(default never).
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  3320
    strings := #('primitive code only' 'never').
6538
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3321
    idx := (stcCompilationOptions indexOf:(ParserFlags stcCompilation) ifAbsent:1).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3322
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3323
    stcCompilation := SelectionInList new list:(resources array:strings).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3324
    stcCompilation selectionIndex:idx.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3325
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3326
    (supportsJustInTimeCompilation := ObjectMemory supportsJustInTimeCompilation)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3327
    ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3328
        justInTimeCompilation := ObjectMemory justInTimeCompilation.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3329
        fullDebugSupport := ObjectMemory fullSingleStepSupport.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3330
    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3331
        justInTimeCompilation := false.
11813
4b506523f3bc lineNumberInfo moved from parser to parserflags
Claus Gittinger <cg@exept.de>
parents: 11684
diff changeset
  3332
        fullDebugSupport := (ParserFlags fullLineNumberInfo) asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3333
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3334
    justInTimeCompilation := justInTimeCompilation asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3335
    fullDebugSupport := fullDebugSupport asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3336
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3337
    catchMethodRedefs := Class catchMethodRedefinitions asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3338
    catchClassRedefs := Class catchClassRedefinitions asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3339
    historyLines := HistoryManager notNil and:[HistoryManager isLoaded and:[HistoryManager isActive]].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3340
    historyLines ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3341
        fullHistoryUpdate := false asValue
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3342
    ] ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3343
        fullHistoryUpdate := HistoryManager fullHistoryUpdate asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3344
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3345
    historyLines := historyLines asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3346
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3347
    keepSourceOptions := #( keep reference absReference sourceReference discard ).
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3348
    keepSource := SelectionInList new
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3349
                        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
  3350
    keepSource selectionIndex:1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3351
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3352
    warnEnabler := [
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3353
              warnings value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3354
                warnSTXBox enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3355
                warnOldStyleBox enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3356
                warnCommonMistakesBox enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3357
                warnCompatibilityBox enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3358
                warnUnusedVarsBox enable.
11990
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  3359
                warnUnderscoreBox enabled:allowUnderscore.
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  3360
                warnDollarBox enabled:allowDollar.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3361
              ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3362
                warnSTXBox disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3363
                warnUnderscoreBox disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3364
                warnDollarBox disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3365
                warnOldStyleBox disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3366
                warnCommonMistakesBox disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3367
                warnCompatibilityBox disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3368
                warnUnusedVarsBox disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3369
              ]].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3370
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3371
    warnings onChangeEvaluate:warnEnabler.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3372
    allowUnderscore onChangeEvaluate:warnEnabler.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3373
    allowDollar onChangeEvaluate:warnEnabler.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3374
"/    allowSqueakExtensions onChangeEvaluate:warnEnabler.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3375
"/    allowQualifiedNames onChangeEvaluate:warnEnabler.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3376
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3377
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3378
    box label:(resources string:'Compiler Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3379
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3380
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3381
    check := box addCheckBox:(resources string:'Catch Method Redefinitions') on:catchMethodRedefs.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3382
    check width:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3383
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3384
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3385
    check := box addCheckBox:(resources string:'Catch Class Redefinitions') on:catchClassRedefs.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3386
    check left:0.5; width:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3387
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3388
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3389
    check := box addCheckBox:(resources string:'Keep History Line in Methods') on:historyLines.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3390
    check width:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3391
    HistoryManager isNil ifTrue:[check disable].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3392
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3393
    check := box addCheckBox:(resources string:'Keep Full Class History') on:fullHistoryUpdate.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3394
    check left:0.5; width:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3395
    HistoryManager isNil ifTrue:[check disable] ifFalse:[check enableChannel:historyLines].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3396
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3397
    box addPopUpList:(resources string:'FileIn Source Mode:') on:keepSource.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3398
    keepSource selectionIndex:( keepSourceOptions indexOf:(ClassCategoryReader sourceMode) ifAbsent:1).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3399
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3400
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3401
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3402
    box addCheckBox:(resources string:'Lazy Compilation when Autoloading') on:compileLazy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3403
    check := box addCheckBox:(resources string:'If Present, Load Binary Objects when Autoloading') on:loadBinaries.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3404
    canLoadBinaries ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3405
        loadBinaries value:false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3406
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3407
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3408
    supportsJustInTimeCompilation ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3409
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3410
                        addCheckBox:(resources string:'Just in Time Compilation to Machine Code')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3411
                        on:justInTimeCompilation.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3412
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3413
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3414
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3415
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3416
    ObjectFileLoader notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3417
        compilationList := box addPopUpList:(resources string:'Stc Compilation to Machine Code') on:stcCompilation.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3418
        stcCompilation selectionIndex:( stcCompilationOptions indexOf:(Compiler stcCompilation) ifAbsent:1).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3419
        stcSetupButt := box addComponent:(Button label:(resources string:'Stc Compilation Parameters...')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3420
                   action:[|manager|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3421
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3422
                           self stcCompilerSettings.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3423
                          ]).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3424
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3425
        box addHorizontalLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3426
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3427
        "/ if there is no compiler around,
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3428
        "/ change to compile nothing, and disable the checkBoxes
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3429
        Compiler canCreateMachineCode ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3430
            stcCompilation selectionIndex:(3 min:stcCompilationOptions size).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3431
            compilationList disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3432
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3433
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3434
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3435
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3436
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3437
    component := box addCheckBox:(resources string:'Allow Underscore in Identifiers') on:allowUnderscore.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3438
    component width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3439
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3440
    component := box addCheckBox:(resources string:'Allow Dollar in Identifiers') on:allowDollar.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3441
    component width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3442
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3443
    component := box addCheckBox:(resources string:'Allow VW3 QualifiedNames') on:allowQualifiedNames.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3444
    component width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3445
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3446
    component := box addCheckBox:(resources string:'Allow Squeak Extensions') on:allowSqueakExtensions.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3447
    component width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3448
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3449
    component := box addCheckBox:(resources string:'Allow Dolphin Extensions') on:allowDolphinExtensions.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3450
    component width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3451
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3452
    y2 := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3453
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3454
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3455
    box leftIndent:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3456
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3457
    component :=box addPopUpList:(resources string:'Constant Folding:') on:constantFolding.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3458
    component superView left:0.5; width:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3459
    constantFolding selectionIndex:( constantFoldingOptions indexOf:(Compiler foldConstants) ifAbsent:1).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3460
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3461
    component := box addCheckBox:(resources string:'Allow OldStyle Assignment (_)') on:allowOldStyleAssignment.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3462
    component left:0.5; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3463
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3464
    component := box addCheckBox:(resources string:'Allow Reserved Words as Selector (self)') on:allowReservedWordsAsSelectors.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3465
    component left:0.5; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3466
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3467
    component := box addCheckBox:(resources string:'Full Debug Info') on:fullDebugSupport.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3468
    component left:0.5; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3469
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3470
    component := box addCheckBox:(resources string:'Literal Arrays are Immutable') on:immutableArrays.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3471
    component left:0.5; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3472
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3473
    box yPosition:(box yPosition max:y2).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3474
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3475
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3476
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3477
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3478
    box addCheckBox:(resources string:'Warnings') on:warnings.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3479
"/    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3480
    oldIndent := box leftIndent.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3481
    box leftIndent:30.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3482
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3483
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3484
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3485
    warnSTXBox := box addCheckBox:(resources string:'ST/X Extensions') on:warnSTX.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3486
    warnSTXBox width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3487
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3488
    warnUnderscoreBox := box addCheckBox:(resources string:'Underscores in Identifiers') on:warnUnderscore.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3489
    warnUnderscoreBox width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3490
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3491
    warnDollarBox := box addCheckBox:(resources string:'Dollars in Identifiers') on:warnDollar.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3492
    warnDollarBox width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3493
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3494
    warnUnusedVarsBox := box addCheckBox:(resources string:'Unused Method Variables') on:warnUnusedVars.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3495
    warnUnusedVarsBox width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3496
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3497
    yMax := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3498
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3499
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3500
    box leftIndent:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3501
    warnOldStyleBox := box addCheckBox:(resources string:'OldStyle Assignment') on:warnOldStyle.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3502
    warnOldStyleBox left:0.5; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3503
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3504
    warnCommonMistakesBox := box addCheckBox:(resources string:'Common Mistakes') on:warnCommonMistakes.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3505
    warnCommonMistakesBox left:0.5; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3506
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3507
    warnCompatibilityBox := box addCheckBox:(resources string:'Possible Incompatibilities') on:warnCompatibility.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3508
    warnCompatibilityBox left:0.5; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3509
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3510
    box leftIndent:oldIndent.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3511
    box yPosition:(yMax max: box yPosition).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3512
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3513
    box addHorizontalLine.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3514
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3515
        addHelpButtonFor:'Launcher/compilerSettings.html';
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3516
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3517
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3518
    warnEnabler value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3519
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3520
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3521
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3522
        HistoryManager notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3523
            HistoryManager fullHistoryUpdate:fullHistoryUpdate value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3524
            historyLines value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3525
                HistoryManager activate
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3526
            ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3527
                HistoryManager deactivate
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3528
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3529
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3530
        Class catchMethodRedefinitions:catchMethodRedefs value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3531
        Class catchClassRedefinitions:catchClassRedefs value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3532
        ClassCategoryReader sourceMode:(keepSourceOptions at:keepSource selectionIndex).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3533
        Compiler warnings:warnings value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3534
        Compiler warnSTXSpecials:warnSTX value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3535
        Compiler warnOldStyleAssignment:warnOldStyle value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3536
        Compiler warnUnderscoreInIdentifier:warnUnderscore value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3537
        Compiler warnDollarInIdentifier:warnDollar value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3538
        Compiler warnCommonMistakes:warnCommonMistakes value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3539
        Compiler warnPossibleIncompatibilities:warnCompatibility value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3540
        Compiler warnUnusedVars:warnUnusedVars value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3541
        Compiler allowUnderscoreInIdentifier:allowUnderscore value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3542
        Compiler allowDollarInIdentifier:allowDollar value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3543
        Compiler allowSqueakExtensions:allowSqueakExtensions value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3544
        Compiler allowDolphinExtensions:allowDolphinExtensions value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3545
        Compiler allowQualifiedNames:allowQualifiedNames value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3546
        Compiler allowOldStyleAssignment:allowOldStyleAssignment value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3547
        Compiler allowReservedWordsAsSelectors:allowReservedWordsAsSelectors value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3548
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3549
        Compiler arraysAreImmutable:immutableArrays value.
11813
4b506523f3bc lineNumberInfo moved from parser to parserflags
Claus Gittinger <cg@exept.de>
parents: 11684
diff changeset
  3550
        ParserFlags lineNumberInfo:(fullDebugSupport value ifTrue:[#full] ifFalse:[true]).
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3551
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3552
        ParserFlags stcCompilation:(stcCompilationOptions at:stcCompilation selectionIndex).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3553
        Compiler foldConstants:(constantFoldingOptions at:constantFolding selectionIndex).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3554
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3555
        supportsJustInTimeCompilation ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3556
            justInTimeCompilation := justInTimeCompilation value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3557
            justInTimeCompilation ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3558
                Smalltalk allMethodsDo:[:m | m checked:false].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3559
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3560
            ObjectMemory justInTimeCompilation:justInTimeCompilation.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3561
            ObjectMemory fullSingleStepSupport:fullDebugSupport value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3562
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3563
        Autoload compileLazy:compileLazy value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3564
        Smalltalk loadBinaries:loadBinaries value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3565
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3566
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3567
4386
9e11f7a0936e change the settingsApplication list
penk
parents: 4385
diff changeset
  3568
"
9e11f7a0936e change the settingsApplication list
penk
parents: 4385
diff changeset
  3569
    self compilerSettings
9e11f7a0936e change the settingsApplication list
penk
parents: 4385
diff changeset
  3570
"
11813
4b506523f3bc lineNumberInfo moved from parser to parserflags
Claus Gittinger <cg@exept.de>
parents: 11684
diff changeset
  3571
4b506523f3bc lineNumberInfo moved from parser to parserflags
Claus Gittinger <cg@exept.de>
parents: 11684
diff changeset
  3572
    "Modified: / 10-09-1995 / 19:19:18 / claus"
4b506523f3bc lineNumberInfo moved from parser to parserflags
Claus Gittinger <cg@exept.de>
parents: 11684
diff changeset
  3573
    "Modified: / 09-09-1996 / 22:42:47 / stefan"
4b506523f3bc lineNumberInfo moved from parser to parserflags
Claus Gittinger <cg@exept.de>
parents: 11684
diff changeset
  3574
    "Modified: / 26-09-2012 / 14:16:39 / cg"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3575
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3576
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3577
displaySettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  3578
    "open a dialog on display related settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  3579
     Obsoleted by the settings application."
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3580
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3581
    |box listOfSizes sizeInfos
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3582
     sizes sizeNames sizeList sizeX sizeY deepIcons
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3583
     isColorMonitor useFixPalette useFixGrayPalette idx ditherStyles ditherSyms ditherList
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3584
     y component screen visual clipEncodings clipEncodingSyms clipEncodingList resources
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3585
     |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3586
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3587
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3588
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3589
    listOfSizes := resources at:'LIST_OF_OFFERED_SCREEN_SIZES' default:#default.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3590
    listOfSizes == #default ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3591
        "/ nothing in resource file; offer at least some.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3592
        sizeInfos := #(
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3593
                           ( '11.3'' (235mm x 175mm) LCD'   (235 175)    )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3594
                           ( '17''   (325mm x 245mm)'       (325 245)    )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3595
                           ( '19''   (340mm x 270mm)'       (340 270)    )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3596
                           ( '20''   (350mm x 280mm)'       (350 280)    )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3597
                           ( '21''   (365mm x 285mm)'       (365 285)    )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3598
                       ).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3599
    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3600
        sizeInfos := resources array:listOfSizes.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3601
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3602
    sizeNames := sizeInfos collect:[:entry | entry at:1].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3603
    sizes := sizeInfos collect:[:entry | entry at:2].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3604
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3605
    screen := Screen current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3606
    visual := screen visualType.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3607
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3608
    isColorMonitor := screen hasColors asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3609
    deepIcons := screen supportsDeepIcons asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3610
    useFixPalette := screen fixColors notNil asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3611
    useFixGrayPalette := screen fixGrayColors notNil asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3612
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3613
    sizeList := SelectionInList with:sizeNames.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3614
    sizeX := screen widthInMillimeter asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3615
    sizeY := screen heightInMillimeter asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3616
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3617
    clipEncodingSyms := #(nil #iso8859 #jis #jis7 #sjis #euc #big5).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3618
    clipEncodings := resources array:#('untranslated' 'iso8859' 'jis' 'jis7' 'shift-JIS' 'EUC' 'big5').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3619
    clipEncodingList := SelectionInList new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3620
    clipEncodingList list:clipEncodings.
6036
826c4d2271b3 Unify naming: clipBoard->clipboard
Stefan Vogel <sv@exept.de>
parents: 6032
diff changeset
  3621
    clipEncodingList selectionIndex:(clipEncodingSyms indexOf:screen clipboardEncoding ifAbsent:1).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3622
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3623
    ditherList := SelectionInList new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3624
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3625
    (visual == #StaticGray or:[visual == #GrayScale]) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3626
        ditherStyles := #('threshold' 'ordered dither' 'error diffusion').
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3627
        ditherSyms := #(threshold ordered floydSteinberg).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3628
    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3629
        visual ~~ #TrueColor ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3630
            ditherStyles := #('nearest color' 'error diffusion').
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3631
            ditherSyms := #(ordered floydSteinberg).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3632
        ]
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3633
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3634
    ditherSyms notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3635
        ditherList list:ditherStyles.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3636
        ditherList selectionIndex:(ditherSyms indexOf:(Image ditherAlgorithm) ifAbsent:#threshold).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3637
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3638
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3639
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3640
    box label:(resources string:'Display Screen Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3641
13735
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  3642
    box addTextLabel:(resources string:'Actual Visible Screen Area:') adjust:#left.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3643
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3644
    (box addPopUpList:(resources string:'Common Sizes:') on:sizeList)
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3645
        label:'monitor size'.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3646
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3647
    idx := sizes findFirst:[:entry |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3648
                                ((entry at:1) = sizeX value)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3649
                                and:[((entry at:2) = sizeY value)]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3650
                           ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3651
    idx ~~ 0 ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3652
        sizeList selectionIndex:idx
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3653
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3654
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3655
    sizeList onChangeEvaluate:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3656
                                        |idx|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3657
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3658
                                        idx := sizeList selectionIndex.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3659
                                        sizeX value:((sizes at:idx) at:1).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3660
                                        sizeY value:((sizes at:idx) at:2).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3661
                                    ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3662
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3663
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3664
    component := box addTextLabel:(resources string:'Screen Size:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3665
    component width:0.3; adjust:#right; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3666
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3667
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3668
    component := box addInputFieldOn:nil tabable:true.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3669
    component width:0.25; left:0.3;
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3670
              immediateAccept:false; acceptOnLeave:false;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3671
              cursorMovementWhenUpdating:#beginOfLine;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3672
              converter:(PrintConverter new initForInteger);
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3673
              model:sizeX.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3674
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3675
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3676
    component := box addTextLabel:(' x ').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3677
    component width:0.1; left:0.55; adjust:#center; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3678
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3679
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3680
    component := box addInputFieldOn:nil tabable:true.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3681
    component width:0.25; left:0.65;
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3682
              immediateAccept:false; acceptOnLeave:false;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3683
              cursorMovementWhenUpdating:#beginOfLine;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3684
              converter:(PrintConverter new initForInteger);
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3685
              model:sizeY.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3686
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3687
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3688
    component := box addTextLabel:('(mm)').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3689
    component width:0.1; left:0.9; adjust:#center; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3690
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3691
    box addVerticalSpace; addHorizontalLine; addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3692
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3693
    (box addTextLabel:(resources string:'Screen: Depth: %1 Visual: %2  (%3)'
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3694
                                 with:screen depth printString
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3695
                                 with:screen visualType
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3696
                                 with:screen serverVendor))
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3697
        adjust:#left.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3698
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3699
    box addVerticalSpace; addHorizontalLine; addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3700
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3701
    box addCheckBox:(resources string:'Color Monitor') on:isColorMonitor.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3702
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3703
    visual == #PseudoColor ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3704
        box addVerticalSpace.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3705
        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
  3706
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3707
        box addVerticalSpace.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3708
        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
  3709
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3710
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3711
    ditherSyms notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3712
        box addVerticalSpace.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3713
        component := box addPopUpList:(resources string:'Image Display:') on:ditherList.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3714
        component defaultLabel:'image display'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3715
        component superView horizontalLayout:#leftSpace.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3716
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3717
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3718
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3719
    box addCheckBox:(resources string:'Allow Colored/Grayscale Icons') on:deepIcons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3720
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3721
    box addVerticalSpace; addHorizontalLine; addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3722
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3723
    component := box addPopUpList:(resources string:'ClipBoard Encoding:') on:clipEncodingList.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3724
    component superView horizontalLayout:#leftSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3725
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3726
    box addHorizontalLine.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3727
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3728
        addHelpButtonFor:'Launcher/screenSettings.html';
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3729
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3730
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3731
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3732
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3733
        Image flushDeviceImages.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3734
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3735
        screen visualType == #PseudoColor ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3736
            useFixPalette value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3737
                Color colorAllocationFailSignal handle:[:ex |
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3738
                    self warn:'Could not allocate colors.'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3739
                ] do:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3740
                    Color getColorsRed:4 green:8 blue:4 on:screen
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3741
                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3742
            ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3743
                screen releaseFixColors
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3744
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3745
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3746
            useFixGrayPalette value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3747
                Color colorAllocationFailSignal handle:[:ex |
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3748
                    self warn:'Could not allocate colors.'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3749
                ] do:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3750
                    Color getGrayColors:32 on:screen
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3751
                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3752
            ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3753
                screen releaseFixGrayColors
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3754
            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3755
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3756
        screen hasColors:isColorMonitor value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3757
        screen widthInMillimeter:sizeX value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3758
        screen heightInMillimeter:sizeY value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3759
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3760
        screen supportsDeepIcons:deepIcons value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3761
        ditherSyms notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3762
            Image ditherAlgorithm:(ditherSyms at:ditherList selectionIndex).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3763
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3764
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3765
        WindowGroup activeGroup withWaitCursorDo:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3766
            View defaultStyle:(View defaultStyle).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3767
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3768
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3769
        screen clipboardEncoding:(clipEncodingSyms at:clipEncodingList selectionIndex).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3770
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3771
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3772
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3773
    "Modified: / 9.9.1996 / 22:43:04 / stefan"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3774
    "Modified: / 20.5.1999 / 18:35:21 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3775
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3776
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3777
editSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3778
    "open a dialog on edit settings"
8421
f1d5ef6bf4f4 default to 4-tabs
Claus Gittinger <cg@exept.de>
parents: 8401
diff changeset
  3779
    "OBSOLETE - this functionality is no longer used - see AbstractSettingsApplication"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3780
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3781
    |box st80EditMode st80SelectMode resources
14682
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3782
     tabsIs4 prevTabsIs4 searchDialogIsModal startTextDragWithControl
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3783
     currentPrefs|
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3784
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3785
    currentPrefs := UserPreferences current.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3786
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3787
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3788
    "/
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3789
    "/ extract relevant system settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3790
    "/
14682
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3791
    st80EditMode := currentPrefs st80EditMode asValue.
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3792
    st80SelectMode := currentPrefs st80SelectMode asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3793
    prevTabsIs4 := (ListView userDefaultTabPositions = ListView tab4Positions).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3794
    tabsIs4 := prevTabsIs4 asValue.
14682
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3795
    searchDialogIsModal := currentPrefs searchDialogIsModal asValue.
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3796
    startTextDragWithControl := currentPrefs startTextDragWithControl asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3797
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3798
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3799
    "/ create a box on those values ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3800
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3801
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3802
    box label:(resources string:'Edit settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3803
6806
1f45872c372f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6661
diff changeset
  3804
    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
  3805
    box addCheckBox:(resources string:'Double Click Select Behavior as in ST80') on:st80SelectMode.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3806
    box addCheckBox:(resources string:'Tab Stops in Multiples of 4') on:tabsIs4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3807
    box addCheckBox:(resources string:'SearchBox is Modal') on:searchDialogIsModal.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3808
    box addCheckBox:(resources string:'CTRL-Key to Start TextDrag') on:startTextDragWithControl.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3809
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3810
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3811
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3812
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3813
        addHelpButtonFor:'Launcher/editSettings.html';
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3814
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3815
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3816
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3817
    "/ show the box ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3818
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3819
    box open.
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
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3823
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3824
    box accepted ifTrue:[
14682
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3825
        currentPrefs st80EditMode:(st80EditMode value).
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3826
        currentPrefs st80SelectMode:(st80SelectMode value).
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3827
        tabsIs4 value ~~ prevTabsIs4 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3828
            ListView userDefaultTabPositions:(tabsIs4 value
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3829
                                                ifTrue:[ListView tab4Positions]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3830
                                                ifFalse:[ListView tab8Positions]).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3831
            ListView allSubInstancesDo:[:eachKindOfListView |
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3832
                tabsIs4 value
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3833
                    ifTrue:[eachKindOfListView setTab4]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3834
                    ifFalse:[eachKindOfListView setTab8]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3835
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3836
        ].
14682
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3837
        currentPrefs searchDialogIsModal:searchDialogIsModal value.
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3838
        currentPrefs startTextDragWithControl:startTextDragWithControl value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3839
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3840
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3841
6806
1f45872c372f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6661
diff changeset
  3842
    "Created: / 06-01-1999 / 14:12:09 / cg"
1f45872c372f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6661
diff changeset
  3843
    "Modified: / 03-07-2006 / 16:35:03 / cg"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3844
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3845
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3846
fontSettingsFor:requestor
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3847
    "open a dialog on font related settings"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3848
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3849
    (self fontBoxForEncoding:nil) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3850
        requestor reopenLauncher.
3741
a9d08a1b0d7d Fix save settings dialog when called with Filename arg
Stefan Vogel <sv@exept.de>
parents: 3738
diff changeset
  3851
    ]
4398
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  3852
"
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  3853
    self fontSettingsFor:nil
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  3854
"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3855
    "Created: 26.2.1996 / 22:52:51 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3856
    "Modified: 8.1.1997 / 14:52:49 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3857
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3858
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3859
javaSettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  3860
    "open a dialog on settings related to the java subsystem.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  3861
     Obsoleted by the settings application."
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3862
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3863
    |box audio javaHome classPath oldJavaHome oldClassPath resources component
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3864
     extraFileSecurityChecks extraSocketSecurityChecks
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3865
     supportsJustInTimeCompilation
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3866
     javaJustInTimeCompilation javaNativeCodeOptimization
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3867
     showJavaByteCode exceptionDebug nullPointerExceptionDebug pathSep|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3868
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3869
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3870
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3871
    audio := JavaVM audioEnabled asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3872
    extraFileSecurityChecks := JavaVM fileOpenConfirmation asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3873
    extraSocketSecurityChecks := JavaVM socketConnectConfirmation asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3874
    (supportsJustInTimeCompilation := ObjectMemory supportsJustInTimeCompilation) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3875
        javaJustInTimeCompilation := ObjectMemory javaJustInTimeCompilation asValue.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3876
        javaNativeCodeOptimization := ObjectMemory javaNativeCodeOptimization asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3877
    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3878
        javaJustInTimeCompilation := javaNativeCodeOptimization := false
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3879
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3880
    showJavaByteCode := JavaMethod forceByteCodeDisplay asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3881
    exceptionDebug := JavaVM exceptionDebug asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3882
    nullPointerExceptionDebug := JavaVM nullPointerExceptionDebug asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3883
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3884
    classPath := (Java classPath ? '').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3885
    OperatingSystem isUNIXlike ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3886
        pathSep := $;.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3887
    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3888
        pathSep := $:.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3889
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3890
    classPath := (classPath asStringWith:pathSep) asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3891
    oldClassPath := classPath copy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3892
    classPath := classPath asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3893
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3894
    javaHome := (Java javaHome ? '').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3895
    oldJavaHome := javaHome copy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3896
    javaHome := javaHome asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3897
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3898
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3899
    box label:(resources string:'Java').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3900
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3901
    box addCheckBox:(resources string:'Audio Enabled') on:audio.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3902
    box addCheckBox:(resources string:'Confirm file open for write') on:extraFileSecurityChecks.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3903
    box addCheckBox:(resources string:'Confirm socket connect') on:extraSocketSecurityChecks.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3904
    box addCheckBox:(resources string:'Debug Exceptions') on:exceptionDebug.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3905
    box addCheckBox:(resources string:'Debug Null Pointer Exceptions') on:nullPointerExceptionDebug.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3906
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3907
    supportsJustInTimeCompilation ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3908
        box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3909
            addCheckBox:(resources string:'java just in time compilation to machine code')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3910
            on:javaJustInTimeCompilation.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3911
        box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3912
            addCheckBox:(resources string:'optimize native code')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3913
            on:javaNativeCodeOptimization.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3914
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3915
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3916
    box addCheckBox:(resources string:'Display java byteCode (i.e. not source)') on:showJavaByteCode.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3917
    box addHorizontalLine.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3918
    component := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3919
                    addLabelledInputField:(resources string:'classPath:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3920
                    adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3921
                    on:classPath
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3922
                    tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3923
                    separateAtX:0.3.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3924
    component acceptOnLeave:false.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3925
    component := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3926
                    addLabelledInputField:(resources string:'java home:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3927
                    adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3928
                    on:javaHome
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3929
                    tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3930
                    separateAtX:0.3.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3931
    component acceptOnLeave:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3932
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3933
    box addVerticalSpace.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3934
    box addComponent:(Button
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3935
                        label:(resources string:'Reinit VM now')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3936
                        action:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3937
                                box windowGroup withWaitCursorDo:[
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3938
"/                                    Java classPath size == 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3939
"/                                        Java initialize.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3940
"/                                    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3941
"/                                    Java classPath size == 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3942
"/                                        self warn:'No JDK found'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3943
"/                                    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3944
                                        JavaVM initializeVM
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3945
"/                                    ]
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3946
                                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3947
                               ]).
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3948
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3949
    box addComponent:(Button
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3950
                        label:(resources string:'Remove all Java classes now')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3951
                        action:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3952
                                box windowGroup withWaitCursorDo:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3953
                                    Java flushAllJavaResources
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3954
                                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3955
                               ]).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3956
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3957
    "/ box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3958
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3959
"/    box addHelpButtonFor:'Launcher/javaSettings.html'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3960
    box addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3961
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3962
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3963
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3964
        classPath value ~= oldClassPath ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3965
            OperatingSystem isUNIXlike ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3966
                classPath := (classPath value asCollectionOfSubstringsSeparatedBy:$:)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3967
            ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3968
                classPath := (classPath value asCollectionOfSubstringsSeparatedBy:$;)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3969
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3970
            Java classPath:classPath
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3971
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3972
        Java javaHome:javaHome value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3973
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3974
        JavaMethod forceByteCodeDisplay:showJavaByteCode value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3975
        JavaVM audioEnabled:audio value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3976
        JavaVM exceptionDebug:exceptionDebug value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3977
        JavaVM nullPointerExceptionDebug:nullPointerExceptionDebug value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3978
        JavaVM fileOpenConfirmation: extraFileSecurityChecks value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3979
        JavaVM socketConnectConfirmation: extraSocketSecurityChecks value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3980
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3981
        javaJustInTimeCompilation value ~~ ObjectMemory javaJustInTimeCompilation ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3982
            ObjectMemory javaJustInTimeCompilation:javaJustInTimeCompilation value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3983
            javaJustInTimeCompilation value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3984
                JavaMethod allSubInstancesDo:[:m | m checked:false].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3985
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3986
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3987
        javaNativeCodeOptimization value ~~ ObjectMemory javaNativeCodeOptimization ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3988
            ObjectMemory javaNativeCodeOptimization:javaNativeCodeOptimization value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3989
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3990
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3991
    box destroy
4398
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  3992
"
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  3993
    self javaSettings
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  3994
"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3995
    "Created: / 18.7.1998 / 22:32:58 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3996
    "Modified: / 27.1.1999 / 20:16:03 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3997
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3998
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3999
keyboardSettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4000
    "open a dialog on keyboard related settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4001
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4002
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4003
    |mappings listOfRawKeys listOfFunctions
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4004
     box l
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4005
     list1 list2 listView1 listView2
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4006
     frame selectionForwarder macroForwarder macroTextView y resources|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4007
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4008
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4009
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4010
    mappings := Screen current keyboardMap.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4011
13882
212877cb97bf merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13761
diff changeset
  4012
    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
  4013
    listOfFunctions := (mappings values asSet collect:[:key | key asString] as:Array) sort.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4014
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4015
    selectionForwarder := Plug new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4016
    selectionForwarder respondTo:#showFunction
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4017
                  with:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4018
                        |raw|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4019
                        raw := list1 selection.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4020
                        list2 retractInterestsFor:selectionForwarder.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4021
                        list2 selection:(mappings at:raw asSymbol) asString.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4022
                        list2 onChangeSend:#showRawKey to:selectionForwarder.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4023
                       ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4024
    selectionForwarder respondTo:#showRawKey
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4025
                  with:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4026
                        |f raw|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4027
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4028
                        f := list2 selection.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4029
                        list1 retractInterestsFor:selectionForwarder.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4030
                        raw := mappings keyAtValue:f asString.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4031
                        raw isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4032
                            raw := mappings keyAtValue:f first.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4033
                            raw isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4034
                                raw := mappings keyAtValue:f asSymbol.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4035
                            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4036
                        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4037
                        list1 selection:raw.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4038
                        list1 onChangeSend:#showFunction to:selectionForwarder.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4039
                       ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4040
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4041
    macroForwarder := [
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4042
                        |f macro indent|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4043
                        f := list2 selection.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4044
                        (f startsWith:'Cmd') ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4045
                            f := f copyFrom:4
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4046
                        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4047
                        macro := UserPreferences current functionKeySequences
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4048
                                    at:(f asSymbol) ifAbsent:nil.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4049
                        macro notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4050
                            macro := macro asStringCollection.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4051
                            indent := macro
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4052
                                         inject:99999 into:[:min :element |
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4053
                                             |stripped|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4054
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4055
                                             stripped := element withoutLeadingSeparators.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4056
                                             stripped isEmpty ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4057
                                                 min
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4058
                                             ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4059
                                                 min min:(element size - stripped size)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4060
                                             ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4061
                                         ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4062
                            indent ~~ 0 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4063
                                macro := macro collect:[:line |
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4064
                                             line size > indent ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4065
                                                line copyFrom:indent+1
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4066
                                             ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4067
                                                line
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4068
                                             ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4069
                                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4070
                            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4071
                        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4072
                        macroTextView contents:macro.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4073
                       ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4074
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4075
    list1 := SelectionInList with:listOfRawKeys.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4076
    list1 onChangeSend:#showFunction to:selectionForwarder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4077
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4078
    list2 := SelectionInList with:listOfFunctions.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4079
    list2 onChangeSend:#showRawKey to:selectionForwarder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4080
    list2 onChangeEvaluate:macroForwarder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4081
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4082
    box := Dialog new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4083
    box label:(resources string:'Keyboard Mappings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4084
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4085
    l := box addTextLabel:(resources at:'KEY_MSG' default:'keyboard mapping:') withCRs.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4086
    l adjust:#left; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4087
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4088
    frame := View new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4089
    frame extent:300 @ 300.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4090
    frame borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4091
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4092
    listView1 := ScrollableView for:SelectionInListView in:frame.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4093
    listView1 model:list1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4094
    listView1 origin:0.0@0.0 corner:0.5@1.0; inset:2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4095
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4096
    listView2 := ScrollableView for:SelectionInListView in:frame.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4097
    listView2 model:list2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4098
    listView2 origin:0.5@0.0 corner:1.0@1.0; inset:2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4099
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4100
    frame topInset:box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4101
    box addComponent:frame withExtent:350@200.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4102
    box makeTabable:listView1.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4103
    box makeTabable:listView2.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4104
    frame origin:0.0@0.0 corner:1.0@0.6.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4105
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4106
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4107
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4108
    l := box addTextLabel:(resources string:'Macro text (if any):') withCRs.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4109
    l adjust:#left; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4110
    l origin:0.0@0.6 corner:1.0@0.6.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4111
    l topInset:(View viewSpacing).
8160
0dcbd8d60198 added preferredWidth & preferredHeight
Claus Gittinger <cg@exept.de>
parents: 8150
diff changeset
  4112
    l bottomInset:(l preferredHeight negated - View viewSpacing).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4113
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4114
    macroTextView := HVScrollableView for:TextView miniScroller:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4115
    box addComponent:macroTextView tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4116
    macroTextView origin:0.0@0.6 corner:1.0@1.0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4117
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4118
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4119
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4120
        addHelpButtonFor:'Launcher/keyboardSetting.html';
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4121
        "addAbortButton;"
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4122
        addOkButtonLabelled:(resources string:'Close' "'Dismiss'").
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4123
8160
0dcbd8d60198 added preferredWidth & preferredHeight
Claus Gittinger <cg@exept.de>
parents: 8150
diff changeset
  4124
    macroTextView topInset:(l preferredHeight + 5).
0dcbd8d60198 added preferredWidth & preferredHeight
Claus Gittinger <cg@exept.de>
parents: 8150
diff changeset
  4125
    macroTextView bottomInset:(box preferredHeight - y).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4126
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4127
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4128
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4129
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4130
        "no action yet ..."
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4131
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4132
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4133
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4134
    "Modified: / 9.9.1996 / 22:43:17 / stefan"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4135
    "Modified: / 4.5.1998 / 12:40:02 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4136
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4137
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4138
languageSettings
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4139
    self languageSettingsFor:nil
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4140
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4141
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4142
languageSettingsFor:requestor
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4143
    "open a dialog on language related settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4144
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4145
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4146
    |listOfLanguages translatedLanguages switch box languageList flags resources|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4147
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4148
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4149
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4150
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4151
     get list of supported languages from the launchers resources ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4152
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4153
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4154
    listOfLanguages := resources at:'LIST_OF_OFFERED_LANGUAGES' default:#('default').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4155
    listOfLanguages := listOfLanguages asOrderedCollection.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4156
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4157
    translatedLanguages := listOfLanguages collect:[:lang | |item|
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4158
                                        item := resources string:lang.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4159
                                        item isString ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4160
                                            item
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4161
                                        ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4162
                                            item at:1
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4163
                                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4164
                                ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4165
    flags := listOfLanguages collect:[:lang | |item|
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4166
                                        item := resources string:lang.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4167
                                        item isArray ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4168
                                            item at:2
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4169
                                        ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4170
                                            nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4171
                                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4172
                                ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4173
    flags := flags collect:[:nm | |img d| nm notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4174
                                            img := Image fromFile:nm.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4175
                                            img isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4176
                                                d := Smalltalk getPackageDirectoryForPackage:'stx:goodies'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4177
                                                img := Image fromFile:(d construct:nm).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4178
                                            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4179
                                        ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4180
                                            nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4181
                                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4182
                           ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4183
    listOfLanguages := listOfLanguages collect:[:nm | nm copyFrom:'LANG_' size + 1].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4184
    languageList := translatedLanguages with:flags collect:[:lang :flag | LabelAndIcon icon:flag string:lang.].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4185
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4186
    box := ListSelectionBox title:(resources at:'LANG_MSG' default:'Select a Language') withCRs.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4187
    box label:(resources string:'Language Selection').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4188
    box list:languageList.
15954
ee1504092cb5 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15946
diff changeset
  4189
    box initialText:(Smalltalk language , '-' , Smalltalk languageTerritory).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4190
    box action:[:newLanguage |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4191
        WindowGroup activeGroup withWaitCursorDo:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4192
            |fontPref idx language oldLanguage territory enc
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4193
             answer matchingFonts l screen|
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
            idx := translatedLanguages indexOf:newLanguage withoutSeparators.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4196
            idx ~~ 0 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4197
                language := listOfLanguages at:idx
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4198
            ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4199
                language := newLanguage
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4200
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4201
            (language includes:$-) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4202
                l := language asCollectionOfSubstringsSeparatedBy:$-.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4203
                language := l at:1.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4204
                territory := l at:2.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4205
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4206
            territory isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4207
                territory := language copyTo:2
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4208
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4209
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4210
            "/ check if the new language needs a differently encoded font;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4211
            "/ ask user to switch font and allow cancellation.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4212
            "/ Otherwise, you are left with unreadable menu & button items ...
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
            oldLanguage := UserPreferences current language.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4215
            Smalltalk setLanguage:language asSymbol.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4216
            ResourcePack flushCachedResourcePacks.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4217
            "/ refetch resources ...
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4218
            resources := self owningClass classResources.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4219
            fontPref := resources at:'PREFERRED_FONT_ENCODING' default:'iso8859*'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4220
            fontPref := fontPref asLowercase.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4221
            Smalltalk setLanguage:oldLanguage.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4222
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4223
            switch := true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4224
            enc := MenuView defaultFont encoding.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4225
            (fontPref match:enc asLowercase) ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4226
                "/ look if there is one at all.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4227
                screen := Screen current.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4228
                matchingFonts := screen listOfAvailableFonts select:[:f | fontPref match:f encoding asLowercase].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4229
                matchingFonts isEmpty ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4230
                    "/ flush and try again - just in case, the font path has changed.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4231
                    screen flushListOfAvailableFonts.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4232
                    matchingFonts := screen listOfAvailableFonts select:[:f | fontPref match:f encoding asLowercase].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4233
                ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4234
                matchingFonts isEmpty ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4235
                    (Dialog
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4236
                        confirm:(resources
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4237
                                    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
  4238
                                      with:fontPref) withCRs)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4239
                    ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4240
                        switch := false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4241
                    ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4242
                ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4243
                    answer := Dialog
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4244
                                confirmWithCancel:(resources
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4245
                                                        string:'menu font is not %1-encoded.\\Change it ?'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4246
                                                        with:fontPref) withCRs
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4247
                                           labels:(resources
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4248
                                                        array:#('Cancel' 'No' 'Yes'))
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4249
                                           default:3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4250
                    answer isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4251
                        switch := false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4252
                    ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4253
                        answer ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4254
                            switch := (requestor fontBoxForEncoding:fontPref)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4255
                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4256
                    ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4257
                ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4258
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4259
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4260
            switch ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4261
                Transcript showCR:'change language to ' , newLanguage , ' ...'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4262
                Smalltalk language:language asSymbol territory:territory asSymbol.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4263
                "/ ResourcePack flushCachedResourcePacks - already done by language-change
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4264
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4265
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4266
        switch ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4267
            requestor reopenLauncher.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4268
            DebugView newDebugger.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4269
        ]
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4270
    ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4271
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4272
        addHelpButtonFor:'Launcher/languageSetting.html'.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4273
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4274
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4275
7431
3f81f2ed64ed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7332
diff changeset
  4276
    "Modified: / 09-09-1996 / 22:43:27 / stefan"
3f81f2ed64ed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7332
diff changeset
  4277
    "Modified: / 19-10-2006 / 22:17:01 / cg"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4278
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4279
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4280
memorySettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4281
    "open a dialog on objectMemory related settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4282
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4283
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4284
    |box igcLimit igcFreeLimit igcFreeAmount newSpaceSize
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4285
     compressLimit
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4286
     oldIncr component fields codeLimit codeTrigger stackLimit resources
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4287
     fastMoreLimit maxOldSpace models info acceptChannel|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4288
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4289
    acceptChannel := false asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4290
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4291
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4292
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4293
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4294
    "/ extract relevant system settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4295
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4296
    igcLimit := ObjectMemory incrementalGCLimit asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4297
    igcFreeLimit := ObjectMemory freeSpaceGCLimit asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4298
    igcFreeAmount := ObjectMemory freeSpaceGCAmount asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4299
    newSpaceSize := ObjectMemory newSpaceSize asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4300
    oldIncr := ObjectMemory oldSpaceIncrement asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4301
    compressLimit := ObjectMemory oldSpaceCompressLimit asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4302
    codeLimit := ObjectMemory dynamicCodeLimit asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4303
    codeTrigger := ObjectMemory dynamicCodeGCTrigger asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4304
    stackLimit := Process defaultMaximumStackSize asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4305
    fastMoreLimit := (ObjectMemory fastMoreOldSpaceLimit:-1) asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4306
    maxOldSpace := ObjectMemory maxOldSpace asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4307
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4308
    models := OrderedCollection new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4309
    info := OrderedCollection new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4310
    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
  4311
    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
  4312
    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
  4313
    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
  4314
    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
  4315
    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
  4316
    models add:oldIncr.         info add:#(number      'Increase oldSpace in chunks of this size'                      'Oldspace Increment:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4317
    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
  4318
    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
  4319
    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
  4320
    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
  4321
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4322
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4323
    "/ create a box on those values ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4324
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4325
    fields := OrderedCollection new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4326
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4327
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4328
    box label:(resources string:'Memory Manager Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4329
13735
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  4330
    box 
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  4331
        addTextLabel:'Warning - invalid settings may result in failures or poor performance
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  4332
' , 'You have been warned' allBold , '.' 
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  4333
        adjust:#left.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4334
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4335
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4336
    models with:info do:[:m :i |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4337
        |lbl descr conv|
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
        conv := i at:1.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4340
        lbl := i at:3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4341
        descr := i at:2.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4342
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4343
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4344
                    addLabelledInputField:(resources string:lbl)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4345
                    adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4346
                    on:nil "/ newSpaceSize
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4347
                    tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4348
                    separateAtX:0.7.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4349
        component acceptOnLeave:false.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4350
"/        component converter:(PrintConverter new perform:conv).
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4351
        component model:((TypeConverter on:m) perform:conv).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4352
        component acceptChannel:acceptChannel.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4353
        fields add:component.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4354
13735
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  4355
        box addTextLabel:descr adjust:#left.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4356
        box addHorizontalLine.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4357
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4358
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4359
    ObjectMemory supportsJustInTimeCompilation ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4360
        (fields at:9) disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4361
        (fields at:10) disable.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4362
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4363
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4364
    box addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4365
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4366
        addHelpButtonFor:'Launcher/memorySettings.html'.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4367
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4368
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4369
    "/ show the box ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4370
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4371
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4372
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4373
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4374
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4375
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4376
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4377
        acceptChannel value:true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4378
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4379
        igcFreeAmount value ~~ ObjectMemory freeSpaceGCAmount ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4380
            ObjectMemory freeSpaceGCAmount:igcFreeAmount value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4381
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4382
        igcFreeLimit value ~~ ObjectMemory freeSpaceGCLimit ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4383
            ObjectMemory freeSpaceGCLimit:igcFreeLimit value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4384
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4385
        igcLimit value ~~ ObjectMemory incrementalGCLimit ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4386
            ObjectMemory incrementalGCLimit:igcLimit value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4387
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4388
        newSpaceSize value ~~ ObjectMemory newSpaceSize ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4389
            ObjectMemory newSpaceSize:newSpaceSize value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4390
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4391
        oldIncr value ~~ ObjectMemory oldSpaceIncrement ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4392
            ObjectMemory oldSpaceIncrement:oldIncr value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4393
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4394
        stackLimit value ~~ Process defaultMaximumStackSize ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4395
            Process defaultMaximumStackSize:stackLimit value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4396
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4397
        fastMoreLimit value ~~ (ObjectMemory fastMoreOldSpaceLimit:-1) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4398
            ObjectMemory fastMoreOldSpaceLimit:fastMoreLimit value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4399
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4400
        maxOldSpace value ~~ ObjectMemory maxOldSpace ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4401
            ObjectMemory maxOldSpace:maxOldSpace value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4402
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4403
        ObjectMemory oldSpaceCompressLimit:compressLimit value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4404
        ObjectMemory dynamicCodeLimit:codeLimit value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4405
        ObjectMemory dynamicCodeGCTrigger:codeTrigger value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4406
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4407
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4408
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4409
    "Modified: 27.2.1997 / 16:50:12 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4410
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4411
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4412
messageSettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4413
    "open a dialog on infoMessage related settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4414
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4415
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4416
    |box vmInfo vmErrors displayErrors classInfos resources|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4417
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4418
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4419
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4420
    vmInfo := ObjectMemory infoPrinting asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4421
    vmErrors := ObjectMemory debugPrinting asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4422
    classInfos := Object infoPrinting asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4423
    displayErrors := DeviceWorkstation errorPrinting asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4424
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4425
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4426
    box label:(resources string:'Messages').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4427
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4428
    box addCheckBox:(resources string:'VM Info Messages') on:vmInfo.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4429
    box addCheckBox:(resources string:'VM Error Messages') on:vmErrors.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4430
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4431
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4432
    box addCheckBox:(resources string:'Display Error Messages (Xlib, Xtlib, WinAPI ...)') on:displayErrors.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4433
    box addCheckBox:(resources string:'Other Info Messages') on:classInfos.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4434
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4435
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4436
    box addHelpButtonFor:'Launcher/messageSettings.html'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4437
    box addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4438
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4439
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4440
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4441
        ObjectMemory infoPrinting:vmInfo value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4442
        ObjectMemory debugPrinting:vmErrors value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4443
        Object infoPrinting:classInfos value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4444
        DeviceWorkstation errorPrinting:displayErrors value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4445
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4446
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4447
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4448
    "Modified: 27.1.1997 / 17:46:01 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4449
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4450
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4451
miscSettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4452
    "open a dialog on misc other settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4453
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4454
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4455
    |box pos pos2 check butt shadows takeFocus focusFollowsMouse returnFocus
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4456
     hostNameInLabel showAccelerators
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4457
     preemptive dynamicPrios hostNameInLabelHolder resources
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4458
     activateOnClick opaqueVariablePanelResize opaqueTableColumnResize currentUserPrefs
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4459
     beepEnabled newWindowLabelFormat|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4460
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4461
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4462
    currentUserPrefs := UserPreferences current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4463
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4464
    "/
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4465
    "/ extract relevant system settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4466
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4467
    shadows := PopUpView shadows asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4468
    beepEnabled := currentUserPrefs beepEnabled asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4469
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4470
    hostNameInLabel := StandardSystemView includeHostNameInLabel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4471
    hostNameInLabelHolder := hostNameInLabel asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4472
    returnFocus := StandardSystemView returnFocusWhenClosingModalBoxes asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4473
    takeFocus := StandardSystemView takeFocusWhenMapped asValue.
9941
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4474
    focusFollowsMouse := currentUserPrefs focusFollowsMouse asValue.
13761
062e30fef79c Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 13735
diff changeset
  4475
    activateOnClick := (Screen current activateOnClick:nil) asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4476
    opaqueVariablePanelResize := currentUserPrefs opaqueVariablePanelResizing asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4477
    opaqueTableColumnResize := currentUserPrefs opaqueTableColumnResizing asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4478
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4479
    showAccelerators := MenuView showAcceleratorKeys asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4480
    preemptive := Processor isTimeSlicing asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4481
    dynamicPrios := Processor supportDynamicPriorities asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4482
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4483
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4484
    "/ create a box on those values ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4485
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4486
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4487
    box label:(resources string:'Other settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4488
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4489
    box addCheckBox:(resources string:'Shadows under PopUp Views') on:shadows.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4490
    box addCheckBox:(resources string:'Beeper enabled') on:beepEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4491
    box addCheckBox:(resources string:'Boxes Return Focus to Previously Active View') on:returnFocus.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4492
    box addCheckBox:(resources string:'Views Catch Focus when Mapped') on:takeFocus.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4493
    pos := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4494
    check := box addCheckBox:(resources string:'Hostname in Window Labels') on:hostNameInLabelHolder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4495
    check width:0.6.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4496
    pos2 := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4497
    box yPosition:pos.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4498
    butt := box addComponent:(Button label:(resources string:'Format...')
9941
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4499
               action:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4500
                       |newFormat|
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4501
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4502
                       newFormat := Dialog request:
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4503
                                        '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
  4504
                                           withCRs initialAnswer:StandardSystemView windowLabelFormat.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4505
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4506
                       newFormat size > 0 ifTrue:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4507
                           newWindowLabelFormat := newFormat
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4508
                       ].
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4509
                      ]).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4510
    box makeTabable:butt.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4511
    butt left:0.6; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4512
    box yPosition:(box yPosition max:pos2).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4513
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4514
    box addCheckBox:(resources string:'Show Accelerator Keys in Menus') on:showAccelerators.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4515
    box addCheckBox:(resources string:'Raise & Activate Windows on Click') on:activateOnClick.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4516
    box addCheckBox:(resources string:'Focus Follows Mouse') on:focusFollowsMouse.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4517
    box addCheckBox:(resources string:'Opaque Variable Panel Resizing') on:opaqueVariablePanelResize.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4518
    box addCheckBox:(resources string:'Opaque Table Column Resizing') on:opaqueTableColumnResize.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4519
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4520
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4521
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4522
    box addCheckBox:(resources string:'Preemptive Scheduling') on:preemptive.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4523
    box leftIndent:20.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4524
    check := box addCheckBox:(resources string:'Dynamic Priorities') on:dynamicPrios.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4525
    check enableChannel:preemptive.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4526
    box leftIndent:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4527
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4528
    box addHorizontalLine.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4529
    box
9941
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4530
        addHelpButtonFor:'Launcher/miscSettings.html';
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4531
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4532
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4533
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4534
    "/ show the box ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4535
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4536
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4537
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4538
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4539
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4540
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4541
    box accepted ifTrue:[
9941
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4542
        PopUpView shadows:shadows value.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4543
        (hostNameInLabelHolder value ~= hostNameInLabel
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4544
        or:[newWindowLabelFormat ~= StandardSystemView windowLabelFormat]) ifTrue:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4545
            StandardSystemView includeHostNameInLabel:hostNameInLabelHolder value.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4546
            newWindowLabelFormat notNil ifTrue:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4547
                StandardSystemView windowLabelFormat:newWindowLabelFormat
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4548
            ].
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4549
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4550
            Screen allScreens do:[:aDisplay |
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4551
                aDisplay allViewsDo:[:aView |
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4552
                    |l|
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4553
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4554
                    aView isTopView ifTrue:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4555
                        l := aView label.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4556
                        l notNil ifTrue:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4557
                            aView label:(l , ' '); label:l.  "/ force a change
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4558
                        ]
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4559
                    ]
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4560
                ]
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4561
            ]
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4562
        ].
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4563
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4564
        currentUserPrefs opaqueVariablePanelResizing:opaqueVariablePanelResize value.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4565
        currentUserPrefs opaqueTableColumnResizing:opaqueTableColumnResize value.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4566
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4567
        currentUserPrefs beepEnabled:beepEnabled value.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4568
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4569
        StandardSystemView returnFocusWhenClosingModalBoxes:returnFocus value.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4570
        StandardSystemView takeFocusWhenMapped:takeFocus value.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4571
        currentUserPrefs focusFollowsMouse:focusFollowsMouse value.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4572
        Screen current activateOnClick:(activateOnClick value).
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4573
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4574
        MenuView showAcceleratorKeys:showAccelerators value.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4575
        Processor isTimeSlicing ~~ preemptive value ifTrue:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4576
            preemptive value ifTrue:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4577
                Processor startTimeSlicing
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4578
            ] ifFalse:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4579
                Processor stopTimeSlicing
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4580
            ]
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4581
        ].
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4582
        Processor supportDynamicPriorities ~~ dynamicPrios value ifTrue:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4583
            Processor supportDynamicPriorities:dynamicPrios value
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4584
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4585
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4586
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4587
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4588
    "Modified: / 9.9.1996 / 22:43:36 / stefan"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4589
    "Modified: / 20.5.1999 / 18:33:55 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4590
    "Modified: / 3.12.1999 / 17:11:38 / ps"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4591
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4592
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4593
printerSettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4594
    "open a dialog on printer related settings; returns true if accepted.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4595
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4596
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4597
    |box accepted
5181
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4598
     possiblePrinters possibleTypes printerType printCommand printFile
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4599
     pageFormat landscape updater
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4600
     formatLabel formatComponent landscapeLabel landscapeComponent
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4601
     topMargin leftMargin rightMargin bottomMargin unitList unit
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4602
     topMarginComponent leftMarginComponent
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4603
     rightMarginComponent
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4604
     bottomMarginComponent supportsColor supportsColorComponent
5181
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4605
     y y1 commandListPop printOutField component commandList row resources|
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4606
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4607
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4608
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4609
    possiblePrinters := PrinterStream withAllSubclasses asArray.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4610
    possibleTypes := possiblePrinters collect:[:cls | cls printerTypeName].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4611
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4612
    printerType := SelectionInList new list:(resources array:possibleTypes).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4613
    printerType selectionIndex:(possiblePrinters identityIndexOf:Printer).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4614
    printCommand := Printer printCommand asValue.
5181
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4615
    printFile := (Printer printFilename ? '') asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4616
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4617
    pageFormat := SelectionInList new list:(Printer defaultPageFormats).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4618
    pageFormat selection:(Printer pageFormat).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4619
    landscape := Printer landscape asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4620
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4621
    topMargin := Printer topMargin asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4622
    leftMargin := Printer leftMargin asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4623
    rightMargin := Printer rightMargin asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4624
    bottomMargin := Printer bottomMargin asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4625
    supportsColor := Printer supportsColor asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4626
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4627
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4628
    box label:(resources string:'Printer Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4629
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4630
"/ either use a popUpList ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4631
"/    box addPopUpList:(resources string:'printer type:') on:printerType.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4632
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4633
"/ or a comboList;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4634
"/ which one looks better ?
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4635
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4636
    component := box addTextLabel:(resources string:'Printer Type:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4637
    component width:0.25; adjust:#right; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4638
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4639
    component := box addComboListOn:printerType tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4640
    component aspect:#selectionIndex; changeMessage:#selectionIndex:; useIndex:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4641
    component width:0.75; left:0.25.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4642
"/ end of question
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4643
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4644
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4645
    component := box addTextLabel:(resources string:'Print Command:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4646
    component width:0.25; adjust:#right; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4647
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4648
    commandListPop := box addComboBoxOn:printCommand tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4649
"/    commandListPop := box addInputFieldOn:printCommand tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4650
    commandListPop width:0.75; left:0.25; immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4651
    "/ some common print commands ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4652
6637
874c6de40070 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6621
diff changeset
  4653
    commandList := resources string:'PRINT_COMMANDS' default:nil.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4654
    commandList isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4655
        commandList := PrinterStream defaultCommands.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4656
        commandList isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4657
            commandList := #('lpr'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4658
                             'lp'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4659
                            ).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4660
        ]
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4661
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4662
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4663
    commandListPop list:commandList.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4664
5181
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4665
    y := box yPosition.
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4666
    component := box addTextLabel:(resources string:'Print to File:').
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4667
    component width:0.25; adjust:#right; borderWidth:0.
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4668
    box yPosition:y.
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4669
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4670
    printOutField := box addInputFieldOn:printFile tabable:true.
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4671
    printOutField width:0.75; left:0.25; immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4672
    printFile
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4673
        onChangeEvaluate:
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4674
            [
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4675
                printFile value size > 0 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4676
                    commandListPop disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4677
                ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4678
                    commandListPop enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4679
                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4680
            ].
5181
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4681
    printFile changed.
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4682
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4683
    box addVerticalSpace; addHorizontalLine; addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4684
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4685
    row := OrderedCollection new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4686
    row add:(formatLabel := Label label:(resources string:'Page Format:')).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4687
    formatLabel borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4688
    row add:(formatComponent := PopUpList on:pageFormat).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4689
    formatComponent label:'unknown'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4690
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4691
    row add:(landscapeLabel := Label label:(resources string:'Landscape:')).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4692
    landscapeLabel borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4693
    row add:(landscapeComponent := CheckToggle on:landscape).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4694
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4695
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4696
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4697
        addRow:(1 to:2)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4698
        fromX:0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4699
        toX:0.5
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4700
        collect:[:idx | row at:idx]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4701
        tabable:false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4702
        horizontalLayout:#leftSpace
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4703
        verticalLayout:#center.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4704
    y1 := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4705
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4706
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4707
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4708
        addRow:(3 to:4)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4709
        fromX:0.5
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4710
        toX:1.0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4711
        collect:[:idx | row at:idx]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4712
        tabable:false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4713
        horizontalLayout:#leftSpace
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4714
        verticalLayout:#center.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4715
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4716
    box yPosition:(box yPosition max:y1).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4717
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4718
    box makeTabable:(formatComponent).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4719
    box makeTabable:(landscapeComponent).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4720
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4721
    box addVerticalSpace; addHorizontalLine; addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4722
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4723
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4724
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4725
    topMarginComponent := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4726
        addLabelledInputField:(resources string:'Top Margin:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4727
        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4728
        on:nil "/ topMargin
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4729
        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4730
        from:0.0 to:0.5
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4731
        separateAtX:0.6.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4732
    topMarginComponent converter:(PrintConverter new initForNumber).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4733
    topMarginComponent model:topMargin.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4734
    y1 := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4735
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4736
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4737
    unitList := SelectionInList with:#('inch' 'mm').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4738
    unitList selectionIndex:1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4739
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4740
    component := box addComponent:(PopUpList on:unitList).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4741
    component
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4742
        left:0.6;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4743
        width:0.3.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4744
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4745
    box yPosition:y1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4746
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4747
    leftMarginComponent := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4748
        addLabelledInputField:(resources string:'Left Margin:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4749
        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4750
        on:nil "/ leftMargin
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4751
        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4752
        from:0.0 to:0.5
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4753
        separateAtX:0.6.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4754
    leftMarginComponent converter:(PrintConverter new initForNumber).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4755
    leftMarginComponent model:leftMargin.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4756
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4757
    rightMarginComponent := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4758
        addLabelledInputField:(resources string:'Right Margin:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4759
        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4760
        on:nil "/ rightMargin
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4761
        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4762
        from:0.0 to:0.5
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4763
        separateAtX:0.6.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4764
    rightMarginComponent converter:(PrintConverter new initForNumber).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4765
    rightMarginComponent model:rightMargin.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4766
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4767
    bottomMarginComponent := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4768
        addLabelledInputField:(resources string:'Bottom Margin:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4769
        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4770
        on:nil "/ bottomMargin
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4771
        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4772
        from:0.0 to:0.5
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4773
        separateAtX:0.6.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4774
    bottomMarginComponent converter:(PrintConverter new initForNumber).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4775
    bottomMarginComponent model:bottomMargin.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4776
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4777
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4778
    supportsColorComponent := box addCheckBox:(resources string:'Color Printer') on:supportsColor.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4779
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4780
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4781
    updater := [ |p fg hasPageSize hasMargins|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4782
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4783
                       printerType selectionIndex ~~ 0 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4784
                           p := possiblePrinters at:(printerType selectionIndex).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4785
                           hasPageSize := p supportsPageSizes.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4786
                           hasMargins := p supportsMargins.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4787
                       ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4788
                           hasPageSize := false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4789
                           hasMargins := false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4790
                       ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4791
                       hasPageSize ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4792
                          fg := Button new foregroundColor.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4793
                          formatComponent enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4794
                          landscapeComponent enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4795
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4796
                          formatComponent label:p pageFormat.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4797
                          pageFormat value:(p pageFormat).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4798
                          landscape value:(p landscape).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4799
                       ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4800
                          fg := Button new disabledForegroundColor.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4801
                          formatComponent disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4802
                          landscapeComponent disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4803
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4804
                          formatComponent label:'unknown'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4805
                          landscape value:nil.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4806
                       ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4807
                       hasMargins ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4808
                          unitList selectionIndex == 2 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4809
                              unit := #mm
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4810
                          ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4811
                              unit := #inch
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4812
                          ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4813
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4814
                          topMargin value:(UnitConverter convert:p topMargin from:#inch to:unit).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4815
                          leftMargin value:(UnitConverter convert:p leftMargin from:#inch to:unit).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4816
                          rightMargin value:(UnitConverter convert:p rightMargin from:#inch to:unit).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4817
                          bottomMargin value:(UnitConverter convert:p bottomMargin from:#inch to:unit).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4818
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4819
                          topMarginComponent enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4820
                          leftMarginComponent enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4821
                          rightMarginComponent enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4822
                          bottomMarginComponent enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4823
                       ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4824
                          topMarginComponent disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4825
                          leftMarginComponent disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4826
                          rightMarginComponent disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4827
                          bottomMarginComponent disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4828
                       ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4829
                       formatLabel foregroundColor:fg.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4830
                       landscapeLabel foregroundColor:fg.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4831
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4832
                       p notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4833
                           commandList := p defaultCommands.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4834
                           commandList notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4835
                                commandListPop list:commandList
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4836
                           ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4837
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4838
                           printCommand value:(p printCommand).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4839
                       ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4840
                       p supportsPostscript ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4841
                           supportsColorComponent disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4842
                           supportsColor value:false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4843
                       ] ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4844
                           supportsColorComponent enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4845
                           supportsColor value:(Printer supportsColor).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4846
                       ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4847
                     ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4848
    unitList onChangeEvaluate:updater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4849
    printerType onChangeEvaluate:updater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4850
    updater value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4851
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4852
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4853
    box addVerticalSpace;
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4854
        addHelpButtonFor:'Launcher/printerSettings.html';
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4855
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4856
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4857
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4858
    (accepted := box accepted) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4859
        Printer := possiblePrinters at:(printerType selectionIndex).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4860
        Printer printCommand:printCommand value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4861
        Printer printFilename:(printFile value isEmptyOrNil ifTrue:[nil] ifFalse:[printFile value]).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4862
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4863
        Printer supportsPageSizes ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4864
            Printer pageFormat:(pageFormat selection).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4865
            Printer landscape:(landscape value).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4866
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4867
        Printer supportsMargins ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4868
            unitList selectionIndex == 2 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4869
                unit := #mm
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4870
            ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4871
                unit := #inch
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4872
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4873
            Printer topMargin:(UnitConverter convert:topMargin value from:unit to:#inch).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4874
            Printer leftMargin:(UnitConverter convert:leftMargin value from:unit to:#inch).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4875
            Printer rightMargin:(UnitConverter convert:rightMargin value from:unit to:#inch).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4876
            Printer bottomMargin:(UnitConverter convert:bottomMargin value from:unit to:#inch).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4877
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4878
        Printer supportsPostscript ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4879
            Printer supportsColor:supportsColor value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4880
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4881
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4882
    box destroy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4883
    ^ accepted
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4884
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4885
    "Modified: 9.9.1996 / 22:43:51 / stefan"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4886
    "Modified: 28.2.1997 / 14:00:13 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4887
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4888
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4889
saveSettings
5465
2c1dc7101e03 *** empty log message ***
ca
parents: 5464
diff changeset
  4890
    SettingsDialog saveSettingsWithoutAskingForFile.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4891
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4892
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4893
sourceAndDebuggerSettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4894
    "open a dialog on source&debugger other settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4895
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4896
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4897
    |box check butt setupButt logDoits updChanges changeFileName
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4898
     useManager hasManager cvsIsSetup
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4899
     repository repositoryHolder localSourceFirst
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4900
     sourceCacheDir cacheEntry
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4901
     component localCheck oldIndent nm fn manager
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4902
     showErrorNotifier showVerboseStack
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4903
     syntaxColoring fullSelectorCheck autoFormat
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4904
     resources pos currentUserPrefs checkClassesWhenCheckingIn checkClassesBox|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4905
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4906
    currentUserPrefs := UserPreferences current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4907
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4908
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4909
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4910
    "/
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4911
    "/ extract relevant system settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4912
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4913
    logDoits := Smalltalk logDoits asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4914
    updChanges := Class updatingChanges asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4915
    changeFileName := ObjectMemory nameForChanges asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4916
4840
4f74aeb5e4d2 autoload is understood by all classes (dummy if already loaded)
Claus Gittinger <cg@exept.de>
parents: 4766
diff changeset
  4917
    AbstractSourceCodeManager notNil ifTrue:[
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4918
        AbstractSourceCodeManager autoload.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4919
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4920
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4921
    hasManager := AbstractSourceCodeManager notNil
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4922
                  and:[AbstractSourceCodeManager isLoaded].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4923
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4924
    repositoryHolder := '' asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4925
    hasManager ifTrue:[
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4926
        useManager := (manager := Smalltalk at:#SourceCodeManager) notNil asValue.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4927
        localSourceFirst := Class tryLocalSourceFirst asValue.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4928
        manager notNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4929
            manager forgetDisabledModules.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4930
            repository := manager repositoryName.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4931
            repository notNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4932
                repositoryHolder := repository asValue.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4933
            ] ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4934
                repositoryHolder := '' asValue.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4935
            ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4936
        ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4937
        cvsIsSetup := true.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4938
    ] ifFalse:[
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4939
        useManager := false.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4940
        localSourceFirst := false.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4941
        cvsIsSetup := false.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4942
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4943
    cvsIsSetup := cvsIsSetup asValue.
4566
af369740e2bc Replace referneces to Exception.
Stefan Vogel <sv@exept.de>
parents: 4552
diff changeset
  4944
    showErrorNotifier := (NoHandlerError emergencyHandler == AbstractLauncherApplication notifyingEmergencyHandler) asValue.
8150
f7143e697cbf *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8117
diff changeset
  4945
    showVerboseStack := (currentUserPrefs verboseBacktraceInDebugger) asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4946
    syntaxColoring := currentUserPrefs syntaxColoring asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4947
    fullSelectorCheck := currentUserPrefs fullSelectorCheck asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4948
    autoFormat := currentUserPrefs autoFormatting asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4949
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4950
    sourceCacheDir := nil asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4951
    checkClassesWhenCheckingIn := (currentUserPrefs at:#checkClassesWhenCheckingIn ifAbsent:true) asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4952
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4953
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4954
    "/ create a box on those values ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4955
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4956
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4957
    box label:(resources string:'Source & Debugger Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4958
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4959
    box addCheckBox:(resources string:'Log compiles in Changefile') on:updChanges.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4960
    box addCheckBox:(resources string:'Log doIts in Changefile') on:logDoits.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4961
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4962
    component := box
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4963
                    addLabelledInputField:(resources string:'Changefile Name:')
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4964
                    adjust:#right
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4965
                    on:changeFileName
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4966
                    tabable:true
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4967
                    separateAtX:0.4.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4968
    component immediateAccept:true; acceptOnLeave:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4969
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4970
"/    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4971
"/    component := box addTextLabel:(resources string:'change file name:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4972
"/    component width:0.5; adjust:#right; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4973
"/    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4974
"/    component := box addInputFieldOn:changeFileName tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4975
"/    component width:0.5; left:0.5; immediateAccept:true; acceptOnLeave:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4976
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4977
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4978
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4979
    hasManager ifTrue:[
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4980
        pos := box yPosition.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4981
        check := box addCheckBox:(resources string:'Sourcecode Management') on:useManager.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4982
        check enableChannel:cvsIsSetup.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4983
        box makeTabable:check.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4984
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4985
        CVSSourceCodeManager notNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4986
            check width:0.6.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4987
            box yPosition:pos.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4988
            setupButt := box addComponent:(Button label:(resources string:'Setup...')
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4989
                       action:[|manager|
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4990
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4991
                               self cvsConfigurationDialog.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4992
                               manager := (Smalltalk at:#SourceCodeManager).
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4993
                               cvsIsSetup value:manager notNil.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4994
                               manager notNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4995
                                    repositoryHolder value: manager repositoryName.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4996
                                    sourceCacheDir value:(AbstractSourceCodeManager cacheDirectoryName).
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4997
                               ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4998
                              ]).
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4999
            setupButt enableChannel:useManager.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5000
            box makeTabable:setupButt.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5001
            setupButt left:0.6; width:0.4.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5002
        ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5003
        oldIndent := box leftIndent.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5004
        box leftIndent:30.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5005
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5006
        box addVerticalSpace:10.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5007
"/        component := box
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5008
"/                        addLabelledInputField:(resources string:'CVS repository:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5009
"/                        adjust:#right
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5010
"/                        on:repositoryHolder
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5011
"/                        tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5012
"/                        separateAtX:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5013
"/        component immediateAccept:true; acceptOnLeave:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5014
"/        component enableChannel:useManager.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5015
"/        component readOnly:true.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5016
"/
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5017
        cacheEntry := box
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5018
                        addLabelledInputField:(resources string:'Source Cache Dir:')
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5019
                        adjust:#right
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5020
                        on:sourceCacheDir
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5021
                        tabable:true
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5022
                        separateAtX:0.5.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5023
        cacheEntry immediateAccept:true; acceptOnLeave:false.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5024
        cacheEntry enableChannel:useManager.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5025
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5026
        pos := box yPosition.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5027
        butt := Button label:(resources string:'Flush Cache now').
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5028
        butt action:[ box withWaitCursorDo:[ AbstractSourceCodeManager flushSourceCache ] ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5029
        box addComponent:butt tabable:true.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5030
        butt left:0.6; width:0.4; leftInset:0.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5031
        butt enableChannel:useManager.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5032
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5033
        butt := Button label:(resources string:'Condense Cache now').
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5034
        butt action:[ box withWaitCursorDo:[ AbstractSourceCodeManager condenseSourceCache ] ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5035
        box addComponent:butt tabable:true.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5036
        butt left:0.6; width:0.4; leftInset:0.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5037
        butt enableChannel:useManager.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5038
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5039
        localCheck := box addCheckBox:(resources string:'If Present, Use Local Source (Suppress Checkout)') on:localSourceFirst.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5040
        localCheck enableChannel:useManager.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5041
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5042
        checkClassesBox := box addCheckBox:(resources string:'Check for halt/error-Sends when Checking in') on:checkClassesWhenCheckingIn.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5043
        checkClassesBox enableChannel:useManager.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5044
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5045
        box leftIndent:oldIndent.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5046
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5047
        (AbstractSourceCodeManager isNil
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5048
        or:[AbstractSourceCodeManager defaultManager isNil]) ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5049
            useManager value:false.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5050
            "/ cacheEntry disable.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5051
            "/ localCheck enable.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5052
        ] ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5053
            sourceCacheDir value:(AbstractSourceCodeManager cacheDirectoryName).
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5054
        ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5055
        box addHorizontalLine.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5056
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5057
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5058
    pos := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5059
    check := box addCheckBox:(resources string:'Syntax Coloring') on:syntaxColoring.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5060
    check width:0.6.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5061
    box yPosition:pos.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5062
    butt := box addComponent:(Button label:(resources string:'Configure...') action:[self syntaxColorConfigurationDialog]).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5063
    box makeTabable:butt.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5064
    butt enableChannel:syntaxColoring.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5065
    butt left:0.6; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5066
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5067
    check := box addCheckBox:(resources string:'Immediate Selector Check') on:fullSelectorCheck.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5068
    check enableChannel:syntaxColoring.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5069
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5070
    pos := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5071
    check := box addCheckBox:(resources string:'Auto Format') on:autoFormat.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5072
    check width:0.6.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5073
    box yPosition:pos.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5074
    butt := box addComponent:(Button label:(resources string:'Configure...') action:[self formattingConfigurationDialog]).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5075
    box makeTabable:butt.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5076
    butt left:0.6; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5077
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5078
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5079
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5080
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5081
    box addCheckBox:(resources string:'Show Error Notifier before Opening Debugger') on:showErrorNotifier.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5082
    box addCheckBox:(resources string:'Verbose Backtrace by Default in Debugger') on:showVerboseStack.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5083
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5084
    box addHorizontalLine.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5085
    box
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5086
        addHelpButtonFor:'Launcher/sourceSettings.html';
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5087
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5088
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5089
    box maxExtent:1000@600.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5090
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5091
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5092
    "/ show the box ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5093
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5094
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5095
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5096
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5097
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5098
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5099
    box accepted ifTrue:[
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5100
        Smalltalk logDoits:logDoits value.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5101
        Class updateChanges:updChanges value.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5102
        ObjectMemory nameForChanges:(changeFileName value).
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5103
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5104
        (hasManager and:[useManager value]) ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5105
            manager isNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5106
                Smalltalk at:#SourceCodeManager put:(AbstractSourceCodeManager defaultManager).
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5107
                manager := Smalltalk at:#SourceCodeManager.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5108
            ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5109
            Class tryLocalSourceFirst:(localSourceFirst value).
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5110
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5111
            manager notNil ifTrue:[
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5112
"/                localSourceFirst value ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5113
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5114
                    nm := sourceCacheDir value.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5115
                    nm size > 0 ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5116
                        (fn := nm asFilename) exists ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5117
                            (self confirm:('CVS cache directory ''' , nm , ''' does not exist\create ?' withCRs)) ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5118
                                fn makeDirectory;
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5119
                                   makeReadableForAll;
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5120
                                   makeWritableForAll;
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5121
                                   makeExecutableForAll.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5122
                            ]
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5123
                        ].
13241
429439b91d57 Use #isWritableDirectory
Stefan Vogel <sv@exept.de>
parents: 13150
diff changeset
  5124
                        (fn isWritableDirectory and:[fn isReadable]) ifTrue:[
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5125
                            AbstractSourceCodeManager cacheDirectoryName:(sourceCacheDir value).
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5126
                        ] ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5127
                            self warn:'Invalid sourceCache directory.'
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5128
                        ]
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5129
                    ]
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5130
"/                ]
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5131
            ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5132
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5133
            repositoryHolder notNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5134
                repositoryHolder value size > 0 ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5135
                    manager notNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5136
                        manager initializeForRepository:repositoryHolder value.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5137
                    ]
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5138
                ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5139
            ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5140
        ] ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5141
            Smalltalk at:#SourceCodeManager put:nil
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5142
        ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5143
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5144
        showErrorNotifier value ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5145
            NoHandlerError emergencyHandler:nil
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5146
        ] ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5147
            NoHandlerError emergencyHandler:(AbstractLauncherApplication notifyingEmergencyHandler)
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5148
        ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5149
        currentUserPrefs verboseBacktraceInDebugger:(showVerboseStack value).
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5150
        currentUserPrefs syntaxColoring:syntaxColoring value.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5151
        currentUserPrefs at:#fullSelectorCheck put:fullSelectorCheck value.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5152
        currentUserPrefs autoFormatting:autoFormat value.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5153
14683
1fd9d79bd0e7 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14682
diff changeset
  5154
        currentUserPrefs at:#checkClassesWhenCheckingIn put:checkClassesWhenCheckingIn value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5155
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5156
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5157
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5158
    "Modified: / 09-09-1996 / 22:43:36 / stefan"
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5159
    "Created: / 17-01-1997 / 17:39:33 / cg"
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5160
    "Modified: / 16-04-1998 / 17:18:47 / ca"
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5161
    "Modified: / 09-02-2011 / 20:32:56 / cg"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5162
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5163
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5164
stcCompilerSettings
6539
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5165
    "open an extra dialog on stc-compiler related settings.
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5166
     Obsoleted by STCCompilerSettingsApp"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5167
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5168
    |box
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5169
     stcIncludes stcDefines stcOptions
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5170
     stcLibraries stcLibraryPath cc stc ccOptions
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5171
     linkCommand linkArgs
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5172
     component
5277
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5173
     canLoadBinaries
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5174
     resources|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5175
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5176
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5177
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5178
    canLoadBinaries := ObjectFileLoader notNil and:[ObjectFileLoader canLoadObjectFiles].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5179
6539
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5180
    stcIncludes := ParserFlags stcCompilationIncludes asValue.
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5181
    stcDefines := ParserFlags stcCompilationDefines asValue.
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5182
    stcOptions := ParserFlags stcCompilationOptions asValue.
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5183
    ccOptions := ParserFlags ccCompilationOptions asValue.
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5184
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5185
    cc := ParserFlags ccPath asValue.
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5186
    stc := ParserFlags stcPath asValue.
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5187
    linkCommand := ParserFlags linkCommand asValue.
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5188
    linkArgs := ParserFlags linkArgs asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5189
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5190
    ObjectFileLoader notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5191
        | t |
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5192
        (t := ParserFlags searchedLibraries) notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5193
            stcLibraries := (String fromStringCollection:t separatedBy:' ') asValue.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5194
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5195
        (t := ParserFlags libPath) notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5196
            stcLibraryPath := t asValue.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5197
        ]
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5198
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5199
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5200
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5201
    box label:(resources string:'STC Compilation Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5202
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5203
    ObjectFileLoader notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5204
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5205
                        addLabelledInputField:(resources string:'stc Command:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5206
                        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5207
                        on:stc
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5208
                        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5209
                        separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5210
        component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5211
        component preferredExtent:(100 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5212
        canLoadBinaries ifFalse:[component disable].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5213
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5214
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5215
                        addLabelledInputField:(resources string:'stc Options:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5216
                        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5217
                        on:stcOptions
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5218
                        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5219
                        separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5220
        component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5221
        component preferredExtent:(250 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5222
        canLoadBinaries ifFalse:[component disable].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5223
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5224
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5225
                        addLabelledInputField:(resources string:'cc Command:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5226
                        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5227
                        on:cc
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5228
                        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5229
                        separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5230
        component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5231
        component preferredExtent:(150 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5232
        canLoadBinaries ifFalse:[component disable].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5233
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5234
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5235
                        addLabelledInputField:(resources string:'cc Options:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5236
                        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5237
                        on:ccOptions
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5238
                        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5239
                        separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5240
        component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5241
        component preferredExtent:(250 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5242
        canLoadBinaries ifFalse:[component disable].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5243
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5244
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5245
                        addLabelledInputField:(resources string:'Include Directories:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5246
                        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5247
                        on:stcIncludes
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5248
                        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5249
                        separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5250
        component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5251
        component preferredExtent:(250 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5252
        canLoadBinaries ifFalse:[component disable].
5277
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5253
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5254
"/        box addVerticalSpace.
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5255
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5256
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5257
                        addLabelledInputField:(resources string:'Defines:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5258
                        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5259
                        on:stcDefines
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5260
                        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5261
                        separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5262
        component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5263
        component preferredExtent:(250 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5264
        canLoadBinaries ifFalse:[component disable].
5277
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5265
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5266
"/        box addVerticalSpace.
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5267
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5268
"/        box addVerticalSpace.
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5269
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5270
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5271
                        addLabelledInputField:(resources string:'Link Command:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5272
                        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5273
                        on:linkCommand
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5274
                        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5275
                        separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5276
        component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5277
        component preferredExtent:(250 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5278
        canLoadBinaries ifFalse:[component disable].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5279
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5280
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5281
                        addLabelledInputField:(resources string:'Link Args:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5282
                        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5283
                        on:linkArgs
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5284
                        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5285
                        separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5286
        component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5287
        component preferredExtent:(250 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5288
        canLoadBinaries ifFalse:[component disable].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5289
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5290
        stcLibraries notNil ifTrue:[
5277
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5291
"/            box addVerticalSpace.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5292
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5293
            component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5294
                            addLabelledInputField:(resources string:'C-libraries:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5295
                            adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5296
                            on:stcLibraries
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5297
                            tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5298
                            separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5299
            component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5300
            component preferredExtent:(250 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5301
            canLoadBinaries ifFalse:[component disable].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5302
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5303
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5304
        stcLibraryPath notNil ifTrue:[
5277
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5305
"/            box addVerticalSpace.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5306
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5307
            component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5308
                            addLabelledInputField:(resources string:'stc LibPath:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5309
                            adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5310
                            on:stcLibraryPath
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5311
                            tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5312
                            separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5313
            component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5314
            component preferredExtent:(250 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5315
            canLoadBinaries ifFalse:[component disable].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5316
        ].
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5317
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5318
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5319
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5320
        addHelpButtonFor:'Launcher/compilerSettings.html';
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5321
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5322
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5323
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5324
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5325
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5326
        ParserFlags stcCompilationIncludes:stcIncludes value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5327
        ParserFlags stcCompilationDefines:stcDefines value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5328
        ParserFlags stcCompilationOptions:stcOptions value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5329
        ParserFlags ccCompilationOptions:ccOptions value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5330
        ParserFlags ccPath:cc value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5331
        stc value ~= ParserFlags stcPath ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5332
            ParserFlags stcPath:stc value
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5333
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5334
        ParserFlags linkCommand:linkCommand value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5335
        ParserFlags linkArgs:linkArgs value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5336
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5337
        ObjectFileLoader notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5338
            stcLibraries notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5339
                ParserFlags searchedLibraries:(stcLibraries value asCollectionOfWords).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5340
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5341
            stcLibraryPath notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5342
                ParserFlags libPath:(stcLibraryPath value).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5343
            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5344
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5345
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5346
    box destroy
4386
9e11f7a0936e change the settingsApplication list
penk
parents: 4385
diff changeset
  5347
"
9e11f7a0936e change the settingsApplication list
penk
parents: 4385
diff changeset
  5348
    self stcCompilerSettings
9e11f7a0936e change the settingsApplication list
penk
parents: 4385
diff changeset
  5349
"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5350
    "Modified: / 10.9.1995 / 19:19:18 / claus"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5351
    "Modified: / 9.9.1996 / 22:42:47 / stefan"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5352
    "Created: / 2.10.1998 / 16:27:49 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5353
    "Modified: / 21.10.1998 / 19:15:10 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5354
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5355
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5356
toolSettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  5357
    "open a dialog on tool settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  5358
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5359
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5360
    |box resources currentUserPrefs in acceptChannel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5361
     useNewInspector useNewChangesBrowser useNewSystemBrowser useNewVersionDiffBrowser
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5362
     useNewFileBrowser showClockInLauncher showClock launcher
15495
41d4ea9d99d8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15385
diff changeset
  5363
     transcriptBufferSize useNewFileDialog useNewSettingsApplication useProcessMonitorV2
41d4ea9d99d8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15385
diff changeset
  5364
     currentTranscript|
41d4ea9d99d8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15385
diff changeset
  5365
41d4ea9d99d8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15385
diff changeset
  5366
    currentTranscript := Transcript current.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5367
    currentUserPrefs := UserPreferences current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5368
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5369
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5370
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5371
    "/
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5372
    "/ extract relevant system settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5373
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5374
    useNewInspector := currentUserPrefs useNewInspector asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5375
    useNewChangesBrowser := currentUserPrefs useNewChangesBrowser asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5376
    useNewSystemBrowser := currentUserPrefs useNewSystemBrowser asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5377
    showClockInLauncher := currentUserPrefs showClockInLauncher asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5378
    useNewVersionDiffBrowser := currentUserPrefs useNewVersionDiffBrowser asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5379
    useNewFileBrowser := currentUserPrefs useNewFileBrowser asValue.
4385
47c861cdeb58 allow change of settings dialog delction and use new FileDialog
penk
parents: 4382
diff changeset
  5380
    useNewFileDialog := currentUserPrefs useNewFileDialog asValue.
4386
9e11f7a0936e change the settingsApplication list
penk
parents: 4385
diff changeset
  5381
    useNewSettingsApplication := currentUserPrefs useNewSettingsApplication asValue.
4464
997576abcb7f add ProcessMonitorV2 access from menu dependent on userPreferences
penk
parents: 4456
diff changeset
  5382
    useProcessMonitorV2 := currentUserPrefs useProcessMonitorV2 asValue.
15495
41d4ea9d99d8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15385
diff changeset
  5383
    currentTranscript isExternalStream ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5384
        transcriptBufferSize := TextCollector defaultLineLimit
5629
2cb05ef96502 care for nonPosStream transcript
Claus Gittinger <cg@exept.de>
parents: 5623
diff changeset
  5385
    ] ifFalse:[
15495
41d4ea9d99d8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15385
diff changeset
  5386
        transcriptBufferSize := currentTranscript lineLimit printString asValue.
5629
2cb05ef96502 care for nonPosStream transcript
Claus Gittinger <cg@exept.de>
parents: 5623
diff changeset
  5387
    ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5388
    acceptChannel := false asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5389
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5390
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5391
    "/ create a box on those values ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5392
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5393
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5394
    box label:(resources string:'Tool Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5395
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5396
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5397
    box addCheckBox:(resources string:'Use the New System Browser') on:useNewSystemBrowser.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5398
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5399
    box addCheckBox:(resources string:'Use the New VersionDiff Browser') on:useNewVersionDiffBrowser.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5400
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5401
    (Smalltalk at:#FileBrowserV2) isBehavior ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5402
        box addCheckBox:(resources string:'Use the New File Browser') on:useNewFileBrowser.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5403
        box addHorizontalLine.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5404
    ].
4385
47c861cdeb58 allow change of settings dialog delction and use new FileDialog
penk
parents: 4382
diff changeset
  5405
    (Smalltalk at:#FileDialog) isBehavior ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5406
        box addCheckBox:(resources string:'Use the New File Dialog') on:useNewFileDialog.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5407
        box addHorizontalLine.
4385
47c861cdeb58 allow change of settings dialog delction and use new FileDialog
penk
parents: 4382
diff changeset
  5408
    ].
47c861cdeb58 allow change of settings dialog delction and use new FileDialog
penk
parents: 4382
diff changeset
  5409
    (Smalltalk at:#SettingsDialog) isBehavior ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5410
        box addCheckBox:(resources string:'Use the New Settings Dialog') on:useNewSettingsApplication.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5411
        box addHorizontalLine.
4385
47c861cdeb58 allow change of settings dialog delction and use new FileDialog
penk
parents: 4382
diff changeset
  5412
    ].
4464
997576abcb7f add ProcessMonitorV2 access from menu dependent on userPreferences
penk
parents: 4456
diff changeset
  5413
    (Smalltalk at:#ProcessMonitorV2) isBehavior ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5414
        box addCheckBox:(resources string:'Use the New ProcessMonitor') on:useProcessMonitorV2.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5415
        box addHorizontalLine.
4464
997576abcb7f add ProcessMonitorV2 access from menu dependent on userPreferences
penk
parents: 4456
diff changeset
  5416
    ].
4936
ed126a4cc771 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4914
diff changeset
  5417
    box addCheckBox:(resources string:'Use the New Changes Browser') on:useNewChangesBrowser.
ed126a4cc771 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4914
diff changeset
  5418
    box addHorizontalLine.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5419
    box addCheckBox:(resources string:'Use Hierarchical Inspector') on:useNewInspector.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5420
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5421
    box addCheckBox:(resources string:'Show Clock in Launcher') on:showClockInLauncher.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5422
    box addHorizontalLine.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5423
    in := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5424
            addLabelledInputField:(resources string:'Transcripts Buffer Size:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5425
            adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5426
            on:transcriptBufferSize
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5427
            tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5428
            separateAtX:0.6.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5429
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5430
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5431
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5432
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5433
        addHelpButtonFor:'Launcher/toolSettings.html';
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5434
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5435
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5436
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5437
    "/ show the box ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5438
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5439
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5440
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5441
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5442
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5443
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5444
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5445
        acceptChannel value:false; value:true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5446
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5447
        currentUserPrefs useNewInspector:useNewInspector value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5448
        currentUserPrefs useNewChangesBrowser:useNewChangesBrowser value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5449
        currentUserPrefs useNewSystemBrowser:useNewSystemBrowser value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5450
        currentUserPrefs useNewVersionDiffBrowser:useNewVersionDiffBrowser value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5451
        currentUserPrefs useNewFileBrowser:useNewFileBrowser value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5452
        currentUserPrefs useNewFileDialog:useNewFileDialog value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5453
        currentUserPrefs useProcessMonitorV2:useProcessMonitorV2 value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5454
        currentUserPrefs useNewSettingsApplication ~= useNewSettingsApplication value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5455
            currentUserPrefs useNewSettingsApplication:useNewSettingsApplication value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5456
            NewLauncher open.
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
        (Smalltalk at:#FileBrowserV2) isBehavior ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5459
            useNewFileBrowser value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5460
                FileBrowserV2 installInLauncher.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5461
            ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5462
                FileBrowserV2 isLoaded ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5463
                    FileBrowserV2 removeFromLauncher.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5464
                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5465
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5466
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5467
        showClock := showClockInLauncher value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5468
        currentUserPrefs showClockInLauncher ~= showClock ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5469
            currentUserPrefs showClockInLauncher:showClock.
15495
41d4ea9d99d8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15385
diff changeset
  5470
            currentTranscript isExternalStream ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5471
                launcher := Transcript application.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5472
                (launcher isKindOf:ToolApplicationModel) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5473
                    showClock ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5474
                        launcher startClock
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5475
                    ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5476
                        launcher stopClock
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5477
                    ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5478
                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5479
            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5480
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5481
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5482
        Inspector := currentUserPrefs inspectorClassSetting.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5483
15495
41d4ea9d99d8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15385
diff changeset
  5484
        transcriptBufferSize := Integer readFrom:transcriptBufferSize value onError:currentTranscript lineLimit.
41d4ea9d99d8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15385
diff changeset
  5485
        currentTranscript lineLimit:transcriptBufferSize.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5486
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5487
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5488
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5489
4385
47c861cdeb58 allow change of settings dialog delction and use new FileDialog
penk
parents: 4382
diff changeset
  5490
"
47c861cdeb58 allow change of settings dialog delction and use new FileDialog
penk
parents: 4382
diff changeset
  5491
    self toolSettings
47c861cdeb58 allow change of settings dialog delction and use new FileDialog
penk
parents: 4382
diff changeset
  5492
"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5493
    "Modified: / 9.9.1996 / 22:43:36 / stefan"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5494
    "Modified: / 16.4.1998 / 17:18:47 / ca"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5495
    "Created: / 13.10.1998 / 15:44:36 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5496
    "Modified: / 12.11.2001 / 15:48:54 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5497
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5498
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5499
viewStyleSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5500
    self viewStyleSettingsFor:nil
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5501
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5502
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5503
viewStyleSettingsFor:requestor
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  5504
    "open a dialog on viewStyle related settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  5505
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5506
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5507
    |resourceDir dir box
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5508
     list listView scrView infoLabel infoForwarder newStyle
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5509
     someRsrcFile didApply resources listUpdater showStandardStylesOnly standardStyles|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5510
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5511
    showStandardStylesOnly := true asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5512
    standardStyles := #(
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5513
                        'decWindows'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5514
                        'iris'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5515
                        'motif'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5516
                        'mswindows95'
12059
9daa2caa5dcd class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 11990
diff changeset
  5517
                        'mswindowsXP'
9daa2caa5dcd class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 11990
diff changeset
  5518
                        'mswindowsVista'
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5519
                        'next'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5520
                        'normal'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5521
                        'os2'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5522
                        'st80'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5523
                       ).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5524
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5525
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5526
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5527
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5528
     search resources directory for a list of .style files ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5529
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5530
    someRsrcFile := Smalltalk getSystemFileName:('resources' asFilename constructString:'normal.style').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5531
    someRsrcFile isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5532
        someRsrcFile := Smalltalk getResourceFileName:'normal.style' forPackage:'stx:libview'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5533
        someRsrcFile isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5534
            someRsrcFile := Smalltalk getResourceFileName:'styles/normal.style' forPackage:'stx:libview'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5535
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5536
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5537
    someRsrcFile notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5538
        resourceDir := someRsrcFile asFilename directoryName
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5539
    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5540
        resourceDir := Smalltalk getSystemFileName:'resources'.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5541
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5542
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5543
    resourceDir isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5544
        self warn:'no styles found (missing ''resources'' directory)'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5545
        ^ self
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5546
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5547
    dir := resourceDir asFilename directoryContents.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5548
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5549
    list := SelectionInList new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5550
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5551
    listUpdater := [
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5552
        |listOfStyles lastSelection|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5553
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5554
        lastSelection := list selection.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5555
        listOfStyles := dir select:[:aFileName | aFileName asFilename hasSuffix:'style'].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5556
        listOfStyles := listOfStyles collect:[:aFileName | aFileName asFilename nameWithoutSuffix].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5557
        Filename isCaseSensitive ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5558
            listOfStyles := listOfStyles collect:[:aStyleName | aStyleName asLowercase].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5559
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5560
        listOfStyles remove:'generic' ifAbsent:nil; remove:'mswindows3' ifAbsent:nil.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5561
        showStandardStylesOnly value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5562
            listOfStyles := listOfStyles select:[:aStyleName | standardStyles includes:aStyleName].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5563
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5564
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5565
        listOfStyles sort.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5566
        list list:listOfStyles.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5567
        list selection:lastSelection.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5568
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5569
    listUpdater value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5570
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5571
    showStandardStylesOnly onChangeEvaluate:listUpdater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5572
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5573
    infoForwarder := [
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5574
                        |nm sheet comment|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5575
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5576
                        comment := ''.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5577
                        nm := list selection.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5578
                        nm notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5579
                            sheet := ViewStyle fromFile:(nm , '.style').
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5580
                            comment := (sheet at:#comment ifAbsent:'') withoutSeparators.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5581
                        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5582
                        comment := comment withCRs asStringCollection.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5583
                        comment size == 1 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5584
                            comment := comment first
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5585
                        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5586
                        infoLabel label:comment
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5587
                       ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5588
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5589
    list onChangeEvaluate:infoForwarder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5590
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5591
    box := Dialog new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5592
    box label:(resources string:'Style Selection').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5593
13735
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  5594
    box addTextLabel:(resources at:'STYLE_MSG' default:'Select a Style') withCRs adjust:#left.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5595
    listView := SelectionInListView on:list.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5596
    listView doubleClickAction:[:sel | box acceptChannel value:true. box hide].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5597
    box addCheckBox:(resources string:'standard styles only') on:showStandardStylesOnly.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5598
    scrView := box addComponent:(ScrollableView forView:listView) tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5599
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5600
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5601
13735
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  5602
    infoLabel := box addTextLabel:'\\' withCRs adjust:#centerLeft.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5603
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5604
    box addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5605
"/ mhmh - the newLauncher does not yet handle apply (without close) correctly
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5606
"/    b := box addButton:(Button label:(resources string:'apply')).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5607
"/    b action:[didApply := true. requestor changeViewStyleTo:(list selection)].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5608
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5609
    (standardStyles includes:View defaultStyle) ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5610
        showStandardStylesOnly value:false
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5611
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5612
    list selection:(View defaultStyle).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5613
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5614
    box stickAtBottomWithVariableHeight:scrView.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5615
    box stickAtBottomWithFixHeight:infoLabel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5616
    didApply := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5617
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5618
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5619
    box destroy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5620
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5621
        ((newStyle := list selection) ~= View defaultStyle
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5622
        or:[didApply ~~ true]) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5623
            requestor notNil ifTrue:[requestor changeViewStyleTo:newStyle].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5624
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5625
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5626
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5627
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5628
     self viewStyleSettingsFor:nil
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5629
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5630
7484
d8ff12aafbaa use nameWithoutSuffix
Claus Gittinger <cg@exept.de>
parents: 7455
diff changeset
  5631
    "Modified: / 07-11-2006 / 13:58:06 / cg"
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  5632
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  5633
4914
e3888800ba3f category
Claus Gittinger <cg@exept.de>
parents: 4895
diff changeset
  5634
!AbstractLauncherApplication::LauncherDialogs class methodsFor:'dialogs-file'!
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  5635
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5636
objectModuleDialog
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5637
    "opens a moduleInfo dialog"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5638
7313
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5639
    self objectModuleDialogReadOnly:false
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5640
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5641
    "Modified: / 19-09-2006 / 19:14:20 / cg"
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5642
!
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5643
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5644
objectModuleDialogReadOnly
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5645
    "opens a moduleInfo dialog"
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5646
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5647
    self objectModuleDialogReadOnly:true
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5648
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5649
    "Created: / 19-09-2006 / 19:14:27 / cg"
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5650
!
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5651
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5652
objectModuleDialogReadOnly:readOnly
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5653
    "opens a moduleInfo dialog"
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5654
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5655
    |allModules moduleNames
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5656
     allObjects methodObjects methodNames
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5657
     cObjects cObjectNames
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5658
     otherObjects otherObjectNames
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5659
     box l handles unloadButton unloadAndRemoveButton
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5660
     list1 list2 listView1 listView2
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5661
     y panel
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5662
     showBuiltIn showModules showMethods showCObjects showOthers
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5663
     moduleListUpdater check canDoIt menu
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5664
     resources middleLabel device screenW screenH|
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5665
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5666
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5667
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5668
    showBuiltIn := true asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5669
    canDoIt := ObjectFileLoader notNil and:[ObjectFileLoader canLoadObjectFiles].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5670
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5671
    showModules := canDoIt asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5672
    showMethods := canDoIt asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5673
    showCObjects := canDoIt asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5674
    showOthers := canDoIt asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5675
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5676
    list1 := SelectionInList new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5677
    list2 := SelectionInList new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5678
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5679
    moduleListUpdater := [
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5680
            |l|
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5681
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5682
            list2 list:nil.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5683
16886
ac4a7157be95 #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 16756
diff changeset
  5684
            l := #().
ac4a7157be95 #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 16756
diff changeset
  5685
            handles := #().
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5686
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5687
            (showModules value or:[showBuiltIn value]) ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5688
                allModules := ObjectMemory binaryModuleInfo asOrderedCollection.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5689
                (showBuiltIn value and:[showModules value]) ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5690
                    allModules := allModules select:[:i |
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5691
                        |wantToSee|
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5692
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5693
                        wantToSee := i dynamic.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5694
                        showBuiltIn value ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5695
                            wantToSee := wantToSee not
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5696
                        ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5697
                        wantToSee
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5698
                    ]
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5699
                ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5700
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5701
                "/ 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
  5702
                allModules sort:[:a :b | (a id) > (b id)].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5703
                moduleNames := allModules collect:[:entry | entry name].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5704
                l := l , moduleNames.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5705
                handles := handles , allModules.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5706
            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5707
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5708
            showMethods value ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5709
                allObjects := ObjectFileLoader loadedObjectHandles.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5710
                methodObjects := (allObjects select:[:h | h isMethodHandle]) asArray.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5711
                methodNames := methodObjects collect:[:mH | mH method isNil ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5712
                                                                'compiled method - removed' " , ' (in ' , mH pathName , ')' "
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5713
                                                            ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5714
                                                                'compiled method ' , mH method whoString  " , ' (in ' , mH pathName , ')' "
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5715
                                                            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5716
                                                     ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5717
                l := l , methodNames.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5718
                handles := handles , methodObjects.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5719
            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5720
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5721
            showCObjects value ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5722
                allObjects := ObjectFileLoader loadedObjectHandles.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5723
                cObjects := (allObjects select:[:h | h isFunctionObjectHandle]) asArray.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5724
                cObjectNames := cObjects collect:[:entry | entry pathName].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5725
                l := l , cObjectNames.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5726
                handles := handles , cObjects.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5727
            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5728
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5729
            showOthers value ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5730
                allObjects := ObjectFileLoader loadedObjectHandles.
12823
50a3b78ef6e7 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12756
diff changeset
  5731
                otherObjects := (allObjects reject:[:h | (h isFunctionObjectHandle
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5732
                                                         or:[h isMethodHandle
12823
50a3b78ef6e7 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12756
diff changeset
  5733
                                                         or:[h isClassLibHandle]])]) asArray.
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5734
                otherObjectNames := otherObjects collect:[:entry | entry pathName].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5735
                l := l , otherObjectNames.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5736
                handles := handles , otherObjects.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5737
            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5738
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5739
            showBuiltIn value ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5740
                l := #('VM') , l.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5741
                handles := #(VM) , handles.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5742
                allModules := #(VM) , allModules.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5743
            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5744
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5745
            list1 list:l.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5746
            readOnly ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5747
                unloadButton disable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5748
                unloadAndRemoveButton disable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5749
            ]
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5750
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5751
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5752
    showBuiltIn onChangeEvaluate:moduleListUpdater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5753
    showModules onChangeEvaluate:moduleListUpdater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5754
    showMethods onChangeEvaluate:moduleListUpdater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5755
    showCObjects onChangeEvaluate:moduleListUpdater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5756
    showOthers onChangeEvaluate:moduleListUpdater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5757
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5758
    box := Dialog new.
5410
d44ced95df04 moduleDialog labels
Claus Gittinger <cg@exept.de>
parents: 5319
diff changeset
  5759
    box label:(resources string:'ST/X & Module Version Information').
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5760
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5761
    listView1 := HVScrollableView for:SelectionInListView miniScrollerH:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5762
    listView1 model:list1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5763
    listView1 origin:0.0@0.0 corner:1.0@0.4. "/ ; inset:2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5764
    listView1 action:[:sel |
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5765
        |info classNames tabs module|
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5766
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5767
        listView1 middleButtonMenu:nil.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5768
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5769
        box withWaitCursorDo:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5770
            |nm fileName addr entry1 entry2 entry3 method l|
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5771
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5772
            tabs := TabulatorSpecification unit:#inch positions:#(0 2.6 3.5).
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5773
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5774
            (showModules value or:[showBuiltIn value]) ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5775
                info := allModules at:sel ifAbsent:nil.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5776
            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5777
            info isNil ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5778
                "/ selected a method, cObject or unknown
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5779
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5780
                module := handles at:sel.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5781
                fileName := module pathName.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5782
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5783
                module isMethodHandle ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5784
                    middleLabel label:'contains method:'.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5785
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5786
                    (method := module method) isNil ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5787
                        nm := '** removed **'.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5788
                    ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5789
                        menu := PopUpMenu
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5790
                                    labels:#('Inspect' 'Browse')
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5791
                                    selectors:#(inspect browse).
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5792
                        menu actionAt:#inspect put:[ method inspect ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5793
                        menu actionAt:#browse put:[ |who|
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5794
                                                    who := method who.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5795
                                                    UserPreferences systemBrowserClass
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5796
                                                        openInClass:(who methodClass)
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5797
                                                        selector:(who methodSelector)
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5798
                                                  ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5799
                        listView1 middleButtonMenu:menu.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5800
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
  5801
                        nm := (method whoString) withColor:(Color blue).
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5802
                    ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5803
                    entry1 := MultiColListEntry new:2 tabulatorSpecification:tabs.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5804
                    entry1 colAt:1 put:'compiled method'; colAt:2 put:nm.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5805
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5806
                    entry2 := MultiColListEntry new:2 tabulatorSpecification:tabs.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5807
                    entry2 colAt:1 put:'path'; colAt:2 put:fileName.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5808
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5809
                    entry3 := MultiColListEntry new:2 tabulatorSpecification:tabs.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5810
                    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
  5811
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5812
                    list2 list:(Array with:entry1 with:entry2 with:entry3).
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5813
                ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5814
                    (module isFunctionObjectHandle
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5815
                    and:[module functions notEmpty]) ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5816
                        middleLabel label:'contains function:'.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5817
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5818
                        menu := PopUpMenu
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5819
                                    labels:#('Inspect')
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5820
                                    selectors:#(inspect).
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5821
                        menu actionAt:#inspect put:[ module functions inspect  ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5822
                        listView1 middleButtonMenu:menu.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5823
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5824
                        list2 list:((module functions select:[:f | f notNil])
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5825
                                        collect:[:f | |entry|
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5826
                                                        entry := MultiColListEntry new:2 tabulatorSpecification:tabs.
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
  5827
                                                        entry colAt:1 put:(f name withColor:Color blue).
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5828
                                                        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
  5829
                                                        entry
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5830
                                                ]).
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5831
                    ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5832
                        list2 list:#('nothing known about contents (no functions have been extracted)').
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5833
                    ]
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5834
                ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5835
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5836
                readOnly ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5837
                    unloadButton enable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5838
                    unloadAndRemoveButton disable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5839
                ]
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5840
            ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5841
                info == #VM ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5842
                    "/ dummy entry for VM;
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5843
                    "/ show file versions in lower view.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5844
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5845
                    middleLabel label:'contains modules:'.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5846
                    l := (ObjectMemory getVMIdentificationStrings).
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5847
                    l := l select:[:entry | entry includesString:'$Header'].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5848
                    l := l select:[:entry | entry includesString:',v'].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5849
                    l := l collect:[:entry |
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5850
                        |i1 i2 file revision date listEntry|
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
                        listEntry := MultiColListEntry new:3 tabulatorSpecification:tabs.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5853
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5854
                        i1 := entry indexOfSubCollection:'librun'.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5855
                        i1 ~~ 0 ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5856
                            i2 := entry indexOfSubCollection:',v' startingAt:i1.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5857
                            i2 ~~ 0 ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5858
                                file := entry copyFrom:i1+7 to:(i2-1).
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5859
                                listEntry colAt:1 put:file.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5860
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5861
                                i1 := i2+3.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5862
                                i2 := entry indexOfSeparatorStartingAt:i1.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5863
                                revision := entry copyFrom:i1 to:(i2-1).
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5864
                                listEntry colAt:2 put:revision.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5865
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5866
                                i1 := i2+1.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5867
                                i2 := entry indexOfSeparatorStartingAt:i1.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5868
                                date := entry copyFrom:i1 to:(i2-1).
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5869
                                listEntry colAt:3 put:date.
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
                        ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5872
                        listEntry.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5873
                        "/ entry
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5874
                    ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5875
                    list2 list:l.
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
                    readOnly ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5878
                        unloadButton disable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5879
                        unloadAndRemoveButton disable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5880
                    ]
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5881
                ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5882
                    "/ selected a package
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5883
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5884
                    "/ fill bottom list with class-info
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
                    middleLabel label:'contains classes:'.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5887
                    classNames := info classNames asSortedCollection.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5888
                    classNames := classNames select:[:cName |
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5889
                                    |cls|
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
                                    cls := Smalltalk classNamed:cName.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5892
                                    cls isNil ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5893
                                        true "a removed class"
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5894
                                    ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5895
                                        cls isPrivate not
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5896
                                    ].
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
                    classNames := classNames collect:[:cName |
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5900
                                    |cls entry rev listEntry|
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5901
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5902
                                    listEntry := MultiColListEntry new:2 tabulatorSpecification:tabs.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5903
                                    listEntry colAt:1 put:cName.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5904
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5905
                                    cls := Smalltalk classNamed:cName.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5906
                                    cls isNil ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5907
                                        listEntry colAt:2 put:'(class removed)'.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5908
                                    ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5909
                                        rev := cls binaryRevision.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5910
                                        rev notNil ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5911
                                            cls isLoaded ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5912
                                                entry := '(stub for: ' , rev.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5913
                                            ] ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5914
                                                entry :='(bin: ' , rev.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5915
                                            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5916
                                            cls revision ~= rev ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5917
                                                entry := entry , ' / src: ' , (cls revision printString)
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5918
                                            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5919
                                            listEntry colAt:2 put:entry , ')'
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5920
                                        ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5921
                                           cls revision notNil ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5922
                                                listEntry colAt:2 put:'(overloaded by: ' , cls revision , ')'
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5923
                                           ]
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5924
                                        ]
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5925
                                    ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5926
                                    listEntry
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5927
                                  ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5928
                    list2 list:classNames.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5929
                    readOnly ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5930
                        info dynamic ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5931
                            unloadButton enable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5932
                            unloadAndRemoveButton enable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5933
                        ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5934
                            unloadButton disable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5935
                            unloadAndRemoveButton disable.
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
                    ].
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
            ]
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5940
        ]
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5941
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5942
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5943
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5944
    panel := HorizontalPanelView new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5945
5410
d44ced95df04 moduleDialog labels
Claus Gittinger <cg@exept.de>
parents: 5319
diff changeset
  5946
    panel add:(l := Label label:'Show:').
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5947
    l adjust:#left; borderWidth:0.
5410
d44ced95df04 moduleDialog labels
Claus Gittinger <cg@exept.de>
parents: 5319
diff changeset
  5948
    panel add:(check := CheckBox label:'Builtin' model:showBuiltIn).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5949
    box makeTabable:check.
5410
d44ced95df04 moduleDialog labels
Claus Gittinger <cg@exept.de>
parents: 5319
diff changeset
  5950
    panel add:(check := CheckBox label:'ClassLibs' model:showModules).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5951
    canDoIt ifFalse:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5952
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5953
    ] ifTrue:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5954
        box makeTabable:check.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5955
    ].
5410
d44ced95df04 moduleDialog labels
Claus Gittinger <cg@exept.de>
parents: 5319
diff changeset
  5956
    panel add:(check := CheckBox label:'Methods' model:showMethods).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5957
    canDoIt ifFalse:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5958
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5959
    ] ifTrue:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5960
        box makeTabable:check.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5961
    ].
5410
d44ced95df04 moduleDialog labels
Claus Gittinger <cg@exept.de>
parents: 5319
diff changeset
  5962
    panel add:(check := CheckBox label:'C-objects' model:showCObjects).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5963
    canDoIt ifFalse:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5964
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5965
    ] ifTrue:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5966
        box makeTabable:check.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5967
    ].
5410
d44ced95df04 moduleDialog labels
Claus Gittinger <cg@exept.de>
parents: 5319
diff changeset
  5968
    panel add:(check := CheckBox label:'Others' model:showOthers).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5969
    canDoIt ifFalse:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5970
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5971
    ] ifTrue:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5972
        box makeTabable:check.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5973
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5974
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5975
    panel horizontalLayout:#fitSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5976
    "/ panel horizontalLayout:#leftSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5977
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5978
    box addComponent:panel tabable:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5979
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5980
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5981
    box addComponent:listView1 tabable:true.
8160
0dcbd8d60198 added preferredWidth & preferredHeight
Claus Gittinger <cg@exept.de>
parents: 8150
diff changeset
  5982
    listView1 topInset:(View viewSpacing + panel preferredHeight).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5983
    listView1 origin:0.0@0.0 corner:1.0@0.4. "/ ; inset:2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5984
5410
d44ced95df04 moduleDialog labels
Claus Gittinger <cg@exept.de>
parents: 5319
diff changeset
  5985
    l := box addTextLabel:(resources string:'Contains:').
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5986
    l adjust:#left; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5987
    l origin:0.0@0.4 corner:1.0@0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5988
    l topInset:(View viewSpacing).
8160
0dcbd8d60198 added preferredWidth & preferredHeight
Claus Gittinger <cg@exept.de>
parents: 8150
diff changeset
  5989
    l bottomInset:((l preferredHeight) negated - View viewSpacing).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5990
    middleLabel := l.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5991
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5992
    listView2 := HVScrollableView for:SelectionInListView  miniScrollerH:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5993
    listView2 model:list2; printItems:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5994
    box addComponent:listView2 tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5995
    listView2 origin:0.0@0.4 corner:1.0@1.0. "/ ; inset:2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5996
    listView2 disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5997
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5998
    menu := PopUpMenu
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5999
                itemList:#(
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6000
                    ('Copy List'    copyList  )
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6001
                )
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6002
                resources:resources.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6003
    menu
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6004
        actionAt:#copyList
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6005
        put:[ listView2 setClipboardText:((listView2 list collect:[:l | l string]) asStringCollection asString)  ].
5440
25f9508b7df4 module dialog
Michael Beyl <mb@exept.de>
parents: 5423
diff changeset
  6006
    listView2 middleButtonMenu:menu.
25f9508b7df4 module dialog
Michael Beyl <mb@exept.de>
parents: 5423
diff changeset
  6007
7313
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  6008
    readOnly ifFalse:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6009
        unloadButton := Button label:(resources string:'Unload').
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6010
        unloadButton action:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6011
            box withWaitCursorDo:[
9411
04a4ec0fd112 When unloading an ObjectFileHandle, use ObjectFileHandle instance methods
Stefan Vogel <sv@exept.de>
parents: 9374
diff changeset
  6012
                |handle idx|
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6013
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6014
                idx := list1 selectionIndex.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6015
                list1 selectionIndex:nil.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6016
9411
04a4ec0fd112 When unloading an ObjectFileHandle, use ObjectFileHandle instance methods
Stefan Vogel <sv@exept.de>
parents: 9374
diff changeset
  6017
                handle := handles at:idx.
04a4ec0fd112 When unloading an ObjectFileHandle, use ObjectFileHandle instance methods
Stefan Vogel <sv@exept.de>
parents: 9374
diff changeset
  6018
                handle notNil ifTrue:[
04a4ec0fd112 When unloading an ObjectFileHandle, use ObjectFileHandle instance methods
Stefan Vogel <sv@exept.de>
parents: 9374
diff changeset
  6019
                    handle unload.
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6020
                ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6021
                moduleListUpdater value.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6022
                unloadButton disable.
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
        ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6025
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6026
        unloadAndRemoveButton := Button label:(resources string:'Remove Classes & Unload').
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6027
        unloadAndRemoveButton action:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6028
            box withWaitCursorDo:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6029
                |info idx pathName|
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
                idx := list1 selectionIndex.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6032
                info := allModules at:idx ifAbsent:nil.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6033
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6034
                list1 selectionIndex:nil.
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
                info isNil ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6037
                    "/ selected a method
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6038
                    "/ idx := idx - allModules size.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6039
                    pathName := (handles at:idx) pathName.
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
                ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6042
                    "/ selected a package
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6043
                    pathName := info pathName.
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
                ObjectFileLoader unloadObjectFileAndRemoveClasses:pathName.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6046
                moduleListUpdater value.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6047
                unloadAndRemoveButton disable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6048
            ]
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6049
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6050
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6051
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6052
    moduleListUpdater value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6053
7313
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  6054
    readOnly ifFalse:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6055
        box addButton:unloadButton.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6056
        box addButton:unloadAndRemoveButton.
7313
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  6057
    ].
5410
d44ced95df04 moduleDialog labels
Claus Gittinger <cg@exept.de>
parents: 5319
diff changeset
  6058
    box addAbortButtonLabelled:(resources string:'Dismiss').
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6059
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6060
    y := box yPosition.
8160
0dcbd8d60198 added preferredWidth & preferredHeight
Claus Gittinger <cg@exept.de>
parents: 8150
diff changeset
  6061
    listView2 topInset:(l preferredHeight + 5).
0dcbd8d60198 added preferredWidth & preferredHeight
Claus Gittinger <cg@exept.de>
parents: 8150
diff changeset
  6062
    listView2 bottomInset:(box preferredHeight - y).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6063
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6064
    device := box device.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6065
    screenW := device width.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6066
    screenH := device height.   
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6067
    box width:(400 min:(screenW * 2 // 3));
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6068
        height:(450 min:(screenH - 50)).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6069
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6070
"/  box sizeFixed:true.
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6071
    box extent:(600 min:(screenW * 2 // 3))
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6072
               @
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6073
               (500 min:(screenH - 50)) .
5440
25f9508b7df4 module dialog
Michael Beyl <mb@exept.de>
parents: 5423
diff changeset
  6074
    box openModeless.
25f9508b7df4 module dialog
Michael Beyl <mb@exept.de>
parents: 5423
diff changeset
  6075
"/    box destroy.
4398
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  6076
"
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  6077
    self objectModuleDialog
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  6078
"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6079
7313
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  6080
    "Modified: / 17-09-1995 / 16:47:50 / claus"
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  6081
    "Created: / 19-09-2006 / 19:14:06 / cg"
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  6082
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  6083
4914
e3888800ba3f category
Claus Gittinger <cg@exept.de>
parents: 4895
diff changeset
  6084
!AbstractLauncherApplication::LauncherDialogs class methodsFor:'dialogs-private'!
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  6085
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6086
cvsConfigurationDialog
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6087
    |cvsRootHolder resources defaultsList bindings dialog
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6088
     listOfModules selectedPerModuleRoot rootsPerModule acceptChannel
7332
4ed25898a452 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7313
diff changeset
  6089
     removeEnabled cvsExecutableHolder|
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6090
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6091
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6092
9528
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6093
    OperatingSystem getDomainName = 'bh.exept.de' ifTrue:[
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6094
        defaultsList := #(
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6095
                            'cvs.bh.exept.de:/cvs/stx'
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6096
                         ).
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6097
        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
  6098
    ] ifFalse:[
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6099
        defaultsList := #(
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6100
                            ':pserver:user@CVSHOST:/cvs/stx'
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6101
                         ).
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6102
        defaultsList := defaultsList copyWith:(':pserver:' , OperatingSystem getLoginName , '@CVSHOST:/cvs/stx')
4510
0727a48aa72e better CVS-Root defaults
penk
parents: 4495
diff changeset
  6103
    ].
0727a48aa72e better CVS-Root defaults
penk
parents: 4495
diff changeset
  6104
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6105
    OperatingSystem isUNIXlike ifTrue:[
9528
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6106
        defaultsList := defaultsList , #(
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6107
                          '/cvs/stx'
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6108
                         ).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6109
    ] ifFalse:[
9528
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6110
        OperatingSystem isMSDOSlike ifTrue:[
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6111
            defaultsList := defaultsList , #(
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6112
                              ':local:c:\cvs\stx'
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6113
                             ).
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6114
        ] ifFalse:[
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6115
            "there might be more here in the future"
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6116
        ]
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6117
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6118
4766
723fc2feb38c new cvs defaults
Claus Gittinger <cg@exept.de>
parents: 4724
diff changeset
  6119
    cvsRootHolder := CVSSourceCodeManager repositoryName ? '/cvs/stx'.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6120
    cvsRootHolder := cvsRootHolder asValue.
5944
4fef6e1d18ff Use #addAll: instead of #declareAllFrom:, since #declareAllFrom:
Stefan Vogel <sv@exept.de>
parents: 5917
diff changeset
  6121
    rootsPerModule := Dictionary new.
6995
91df148858bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6806
diff changeset
  6122
    rootsPerModule addAll:(CVSSourceCodeManager repositoryInfoPerModule).
7332
4ed25898a452 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7313
diff changeset
  6123
    cvsExecutableHolder := CVSSourceCodeManager cvsExecutable asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6124
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6125
    bindings := IdentityDictionary new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6126
    bindings at:#acceptChannel put:(acceptChannel := TriggerValue new).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6127
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6128
    bindings at:#cvsRootPrototypeList put:defaultsList.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6129
    bindings at:#cvsRootHolder put:cvsRootHolder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6130
    bindings at:#perModuleRootModule put:nil asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6131
    bindings at:#perModuleRoot put:nil asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6132
    bindings at:#removeEnabled put:(removeEnabled := false asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6133
    bindings at:#listOfModules put:(listOfModules := rootsPerModule keys asList).
7332
4ed25898a452 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7313
diff changeset
  6134
    bindings at:#cvsExecutableHolder put:cvsExecutableHolder.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6135
    listOfModules sort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6136
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6137
    bindings at:#selectedPerModuleRoot put:(selectedPerModuleRoot := nil asValue).
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6138
    selectedPerModuleRoot
9528
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6139
             onChangeEvaluate:[
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6140
                            |module cvsRoot|
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6141
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6142
                            acceptChannel value:true.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6143
                            module := selectedPerModuleRoot value.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6144
                            removeEnabled value:true.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6145
                            cvsRoot := rootsPerModule at:module ifAbsent:''.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6146
                            (bindings at:#perModuleRootModule) value:module.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6147
                            (bindings at:#perModuleRoot) value:cvsRoot.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6148
             ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6149
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6150
    bindings at:#help put:[
9528
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6151
                            WindowGroup activeGroup withWaitCursorDo:[
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6152
                                HTMLDocumentView openFullOnHelpFile:'Launcher/cvsSetup.html'
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6153
                            ]
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6154
                          ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6155
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6156
    bindings at:#addPerModuleRoot put:[
9528
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6157
                            |module cvsRoot|
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6158
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6159
                            acceptChannel value:true.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6160
                            module := (bindings at:#perModuleRootModule) value.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6161
                            cvsRoot := (bindings at:#perModuleRoot) value.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6162
                            (listOfModules includes:module) ifFalse:[
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6163
                                listOfModules add:module.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6164
                                listOfModules sort.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6165
                            ].
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6166
                            cvsRoot size > 0 ifTrue:[
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6167
                                rootsPerModule at:module put:cvsRoot.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6168
                            ].
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6169
                          ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6170
    bindings at:#removePerModuleRoot put:[
9528
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6171
                            |module|
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6172
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6173
                            acceptChannel value:true.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6174
                            module := (bindings at:#perModuleRootModule) value.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6175
                            listOfModules remove:module ifAbsent:nil.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6176
                            rootsPerModule removeKey:module ifAbsent:nil.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6177
                            (bindings at:#perModuleRootModule) value:nil.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6178
                            (bindings at:#perModuleRoot) value:nil.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6179
                          ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6180
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6181
    dialog := SimpleDialog new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6182
    dialog resources:resources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6183
    (dialog openSpec:(self cvsSetupSpec) withBindings:bindings) ifFalse:[
9528
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6184
        ^ self
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6185
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6186
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6187
    acceptChannel value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6188
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6189
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6190
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6191
    "/
7332
4ed25898a452 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7313
diff changeset
  6192
    CVSSourceCodeManager cvsExecutable:cvsExecutableHolder value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6193
    CVSSourceCodeManager initializeForRepository:cvsRootHolder value.
6995
91df148858bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6806
diff changeset
  6194
    CVSSourceCodeManager repositoryInfoPerModule:rootsPerModule.
4398
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  6195
7332
4ed25898a452 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7313
diff changeset
  6196
    "
4ed25898a452 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7313
diff changeset
  6197
     self cvsConfigurationDialog
4ed25898a452 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7313
diff changeset
  6198
    "
4ed25898a452 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7313
diff changeset
  6199
4ed25898a452 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7313
diff changeset
  6200
    "Modified: / 21-09-2006 / 16:54:20 / cg"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6201
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6202
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6203
fontBoxForEncoding:encodingMatch
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6204
    "open a fontBox, showing fonts which match some encoding
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6205
     (used when changing to japanese ...)"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6206
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6207
    |box y b
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6208
     labelDef buttonDef listDef menuDef textDef
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6209
     models labels allOfThem filter resources defaultButton|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6210
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6211
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6212
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6213
    encodingMatch notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6214
        filter := [:f | f encoding notNil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6215
                        and:[encodingMatch match:f encoding]].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6216
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6217
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6218
    models := OrderedCollection new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6219
    labels := OrderedCollection new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6220
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6221
    models add:(allOfThem := nil asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6222
    models add:(labelDef := Label defaultFont asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6223
    models add:(buttonDef := Button defaultFont asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6224
    models add:(listDef := SelectionInListView defaultFont asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6225
    models add:(menuDef := MenuView defaultFont asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6226
    models add:(textDef := TextView defaultFont asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6227
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6228
    box := Dialog new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6229
    box label:(resources string:'Font Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6230
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6231
    models
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6232
    with:(resources array:#('All' 'Labels' 'Buttons' 'Lists' 'Menus' 'Edited Text'))
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6233
    do:[:model :title |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6234
        |y2 lbl f i|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6235
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6236
        f := model value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6237
13735
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  6238
        box addTextLabel:title adjust:#left.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6239
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6240
        y := box yPosition.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6241
        b := box addComponent:(Button label:(resources string:'Change ...')) tabable:true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6242
        b relativeExtent:nil; extent:(b preferredExtent).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6243
        y2 := box yPosition.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6244
        box yPosition:y.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6245
        i := box leftIndent.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6246
        box leftIndent:(b widthIncludingBorder + View viewSpacing).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6247
        (lbl := box addTextLabel:'')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6248
            adjust:#left;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6249
            font:(model value);
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6250
            labelChannel:(BlockValue
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6251
                            with:[:v | |f|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6252
                                f := v.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6253
                                f isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6254
                                    ''
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6255
                                ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6256
                                    f userFriendlyName
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6257
                                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6258
                            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6259
                            argument:model).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6260
        labels add:lbl.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6261
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6262
        box leftIndent:i.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6263
        box yPosition:(box yPosition max:y2).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6264
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6265
        box addVerticalSpace; addHorizontalLine; addVerticalSpace.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6266
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6267
        b action:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6268
            |f|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6269
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6270
            f := FontPanel
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6271
                    fontFromUserInitial:(model value)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6272
                    title:(resources string:'Font for %1' with:title)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6273
                    filter:filter
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6274
                    encoding:encodingMatch.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6275
            f notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6276
                model == allOfThem ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6277
                    models do:[:m | m value:f].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6278
                    labels do:[:l | l font:f]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6279
                ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6280
                    model value:f.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6281
                    lbl font:f.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6282
                ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6283
            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6284
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6285
        model == allOfThem ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6286
            box addVerticalSpace
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6287
        ]
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6288
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6289
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6290
    box addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6291
    defaultButton := Button label:(resources string:'Defaults').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6292
13401
0dbda3c5121c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13241
diff changeset
  6293
    box addButton:defaultButton.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6294
    defaultButton
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6295
        action:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6296
            "/ fetch defaults
5449
8947b587b1f7 readStyleSheetAndUpdateAllStyleCaches not for every read settings
penk
parents: 5440
diff changeset
  6297
"/            View readStyleSheetAndUpdateAllStyleCaches.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6298
            labelDef value: Label defaultFont.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6299
            buttonDef value: Button defaultFont.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6300
            listDef value: SelectionInListView defaultFont.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6301
            menuDef value: MenuView defaultFont.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6302
            textDef value: TextView defaultFont.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6303
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6304
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6305
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6306
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6307
        Label defaultFont:labelDef value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6308
        Button defaultFont:buttonDef value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6309
        Toggle defaultFont:buttonDef value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6310
        TextView withAllSubclasses do:[:cls | cls defaultFont:textDef value].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6311
        SelectionInListView withAllSubclasses do:[:cls | cls defaultFont:listDef value].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6312
        MenuView defaultFont:menuDef value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6313
        MenuPanel defaultFont:menuDef value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6314
        NoteBookView defaultFont:menuDef value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6315
        PullDownMenu defaultFont:menuDef value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6316
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6317
    box destroy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6318
    ^ box accepted
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6319
7726
3622371456d4 BlockValue usage cleanup
Claus Gittinger <cg@exept.de>
parents: 7679
diff changeset
  6320
    "Created: / 27-02-1996 / 01:44:16 / cg"
3622371456d4 BlockValue usage cleanup
Claus Gittinger <cg@exept.de>
parents: 7679
diff changeset
  6321
    "Modified: / 17-06-1996 / 13:38:48 / stefan"
13401
0dbda3c5121c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13241
diff changeset
  6322
    "Modified: / 29-08-2013 / 12:20:48 / cg"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6323
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6324
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6325
formattingConfigurationDialog
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6326
    |dialog
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6327
     resources exampleText formattedText reformatAction
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6328
     reformatLocked
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6329
     oldUserPreferences
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6330
     currentUserPrefs
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6331
     tabIndent
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6332
     spaceAroundTemporaries emptyLineAfterTemporaries
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6333
     spaceAfterReturnToken spaceAfterKeywordSelector cStyleBlocks
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6334
     blockArgumentsOnNewLine
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6335
     maxLengthForSingleLineBlocks resetValue bindings|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6336
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6337
    RBFormatter isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6338
        ^ self warn:'Sorry, no RBFormatter class'.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6339
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6340
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6341
    RBFormatter isLoaded ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6342
        WindowGroup activeGroup withWaitCursorDo:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6343
            RBFormatter autoload
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6344
        ]
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6345
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6346
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6347
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6348
    currentUserPrefs := UserPreferences current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6349
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6350
    exampleText :=
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6351
'methodSelector:methodArg
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6352
    "method comment:
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6353
     some stupid code to show the current settings"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6354
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6355
    |index|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6356
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6357
    "/ another comment ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6358
    self at:index.                      "/ a message
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6359
    self at:index put:methodArg.        "/ a two arg message
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6360
    self from:1 to:index put:methodArg. "/ a three arg message
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6361
    methodArg ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6362
        Transcript showCR:''hello''.      "/ condition
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6363
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6364
    methodArg ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6365
        Transcript showCR:''hello''.      "/ condition
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6366
    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6367
        Transcript showCR:''world''.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6368
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6369
    [methodArg] whileTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6370
        Transcript showCR:''hello''.      "/ looping
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6371
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6372
    [self aVeryLongConditionBlock and:[self toMakeBlockLonger]] whileTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6373
        Transcript showCR:''hello''.      "/ long blocks
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6374
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6375
    methodArg do:[:element |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6376
        Transcript showCR:''hello''.      "/ looping
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6377
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6378
    1 to:methodArg size do:[:index |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6379
        Transcript showCR:''hello''.      "/ looping
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6380
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6381
    methodArg keysAndValuesDo:[:index |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6382
        Transcript showCR:''hello''.      "/ looping
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6383
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6384
    Object errorSignal handle:[:ex |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6385
        ex return
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6386
    ] do:[                                "/ exception handling
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6387
        self someAction                   "/ blocks
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6388
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6389
    ^ self.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6390
'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6391
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6392
    formattedText := '' asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6393
    reformatLocked := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6394
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6395
    reformatAction := [ |tree
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6396
                         s_tabIndent s_spaceAroundTemporaries s_emptyLineAfterTemporaries
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6397
                         s_spaceAfterReturnToken s_spaceAfterKeywordSelector s_cStyleBlocks
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6398
                         s_maxLengthForSingleLineBlocks s_blockArgumentsOnNewLine|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6399
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6400
                        reformatLocked ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6401
                            "/
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6402
                            "/ temporary change the RBFormatters settings ...
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6403
                            "/
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6404
                            s_tabIndent := RBFormatter tabIndent.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6405
                            s_spaceAroundTemporaries := RBFormatter spaceAroundTemporaries.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6406
                            s_emptyLineAfterTemporaries := RBFormatter emptyLineAfterTemporaries.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6407
                            s_spaceAfterReturnToken := RBFormatter spaceAfterReturnToken.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6408
                            s_spaceAfterKeywordSelector := RBFormatter spaceAfterKeywordSelector.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6409
                            s_cStyleBlocks := RBFormatter cStyleBlocks.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6410
                            s_blockArgumentsOnNewLine := RBFormatter blockArgumentsOnNewLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6411
                            s_maxLengthForSingleLineBlocks := RBFormatter maxLengthForSingleLineBlocks.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6412
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6413
                            RBFormatter
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6414
                                tabIndent:tabIndent value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6415
                                spaceAroundTemporaries:spaceAroundTemporaries value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6416
                                emptyLineAfterTemporaries:emptyLineAfterTemporaries value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6417
                                spaceAfterReturnToken:spaceAfterReturnToken value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6418
                                spaceAfterKeywordSelector:spaceAfterKeywordSelector value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6419
                                cStyleBlocks:cStyleBlocks value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6420
                                blockArgumentsOnNewLine:blockArgumentsOnNewLine value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6421
                                maxLengthForSingleLineBlocks:maxLengthForSingleLineBlocks value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6422
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6423
                            tree := RBParser
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6424
                                        parseMethod:exampleText
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6425
                                        onError: [:aString :position | nil].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6426
                            tree do:[:node |
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6427
                                (node ~~ tree and:[node parent isNil]) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6428
                                    self error:'No parent for node'.
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
                            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6431
                            formattedText value:tree printString.
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
                            RBFormatter
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6434
                                tabIndent:s_tabIndent;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6435
                                spaceAroundTemporaries:s_spaceAroundTemporaries;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6436
                                emptyLineAfterTemporaries:s_emptyLineAfterTemporaries;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6437
                                spaceAfterReturnToken:s_spaceAfterReturnToken;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6438
                                spaceAfterKeywordSelector:s_spaceAfterKeywordSelector;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6439
                                cStyleBlocks:s_cStyleBlocks;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6440
                                blockArgumentsOnNewLine:s_blockArgumentsOnNewLine;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6441
                                maxLengthForSingleLineBlocks:s_maxLengthForSingleLineBlocks.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6442
                          ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6443
                      ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6444
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6445
    bindings := IdentityDictionary new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6446
    bindings at:#formattedText put:formattedText.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6447
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6448
    oldUserPreferences := currentUserPrefs copy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6449
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6450
    tabIndent := RBFormatter tabIndent asValue.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6451
    tabIndent onChangeEvaluate:reformatAction.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6452
    bindings at:#tabIndent put:tabIndent.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6453
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6454
    spaceAroundTemporaries := RBFormatter spaceAroundTemporaries asValue.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6455
    spaceAroundTemporaries onChangeEvaluate:reformatAction.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6456
    bindings at:#spaceAroundTemporaries put:spaceAroundTemporaries.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6457
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6458
    emptyLineAfterTemporaries := RBFormatter emptyLineAfterTemporaries asValue.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6459
    emptyLineAfterTemporaries onChangeEvaluate:reformatAction.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6460
    bindings at:#emptyLineAfterTemporaries put:emptyLineAfterTemporaries.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6461
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6462
    spaceAfterReturnToken := RBFormatter spaceAfterReturnToken asValue.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6463
    spaceAfterReturnToken onChangeEvaluate:reformatAction.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6464
    bindings at:#spaceAfterReturnToken put:spaceAfterReturnToken.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6465
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6466
    spaceAfterKeywordSelector := RBFormatter spaceAfterKeywordSelector asValue.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6467
    spaceAfterKeywordSelector onChangeEvaluate:reformatAction.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6468
    bindings at:#spaceAfterKeywordSelector put:spaceAfterKeywordSelector.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6469
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6470
    cStyleBlocks := RBFormatter cStyleBlocks asValue.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6471
    cStyleBlocks onChangeEvaluate:reformatAction.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6472
    bindings at:#cStyleBlocks put:cStyleBlocks.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6473
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6474
    blockArgumentsOnNewLine := RBFormatter blockArgumentsOnNewLine asValue.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6475
    blockArgumentsOnNewLine onChangeEvaluate:reformatAction.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6476
    bindings at:#blockArgumentsOnNewLine put:blockArgumentsOnNewLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6477
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6478
    maxLengthForSingleLineBlocks := RBFormatter maxLengthForSingleLineBlocks asValue.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6479
    maxLengthForSingleLineBlocks onChangeEvaluate:reformatAction.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6480
    bindings at:#maxLengthForSingleLineBlocks put:maxLengthForSingleLineBlocks.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6481
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6482
    bindings at:#resetList   put:#( 'ST/X default' 'RB default' ).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6483
    bindings at:#resetValue  put:(resetValue := nil asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6484
    resetValue onChangeEvaluate:
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6485
        [
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6486
            resetValue value == 1 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6487
                "/ ST/X defaults
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6488
                reformatLocked := true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6489
                tabIndent value: 4.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6490
                spaceAfterReturnToken value: true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6491
                spaceAfterKeywordSelector value: false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6492
                spaceAroundTemporaries value: false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6493
                emptyLineAfterTemporaries value: true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6494
                cStyleBlocks value: true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6495
                blockArgumentsOnNewLine value:false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6496
                maxLengthForSingleLineBlocks value: 20.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6497
                reformatLocked := false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6498
                reformatAction value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6499
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6500
            resetValue value == 2 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6501
                "/ RBParser defaults
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6502
                reformatLocked := true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6503
                tabIndent value: 8.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6504
                spaceAfterReturnToken value: false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6505
                spaceAfterKeywordSelector value: true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6506
                spaceAroundTemporaries value: true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6507
                emptyLineAfterTemporaries value: false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6508
                cStyleBlocks value: false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6509
                blockArgumentsOnNewLine value:false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6510
                maxLengthForSingleLineBlocks value: 20.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6511
                reformatLocked := false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6512
                reformatAction value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6513
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6514
            resetValue value:nil. "/ to force default label
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
    reformatAction value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6518
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6519
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6520
    "/ create a box on those ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6521
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6522
    dialog := SimpleDialog new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6523
    dialog postBuildBlock:[:builder |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6524
                                (builder componentAt:#sampleTextView)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6525
                                    cursorMovementWhenUpdating:nil;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6526
                                    scrollWhenUpdating:nil.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6527
                          ].
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6528
    (dialog openFor:nil
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6529
        spec:(self formatterDialogSpec)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6530
        withBindings:bindings)
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6531
    ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6532
        currentUserPrefs at:#'formatter.tabIndent' put:tabIndent value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6533
        currentUserPrefs at:#'formatter.spaceAroundTemporaries' put:spaceAroundTemporaries value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6534
        currentUserPrefs at:#'formatter.emptyLineAfterTemporaries' put:emptyLineAfterTemporaries value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6535
        currentUserPrefs at:#'formatter.spaceAfterReturnToken' put:spaceAfterReturnToken value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6536
        currentUserPrefs at:#'formatter.spaceAfterKeywordSelector' put:spaceAfterKeywordSelector value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6537
        currentUserPrefs at:#'formatter.cStyleBlocks' put:cStyleBlocks value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6538
        currentUserPrefs at:#'formatter.blockArgumentsOnNewLine' put:blockArgumentsOnNewLine value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6539
        currentUserPrefs at:#'formatter.maxLengthForSingleLineBlocks' put:maxLengthForSingleLineBlocks value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6540
        RBFormatter
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6541
            tabIndent:tabIndent value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6542
            spaceAroundTemporaries:spaceAroundTemporaries value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6543
            emptyLineAfterTemporaries:emptyLineAfterTemporaries value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6544
            spaceAfterReturnToken:spaceAfterReturnToken value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6545
            spaceAfterKeywordSelector:spaceAfterKeywordSelector value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6546
            cStyleBlocks:cStyleBlocks value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6547
            blockArgumentsOnNewLine:blockArgumentsOnNewLine value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6548
            maxLengthForSingleLineBlocks:maxLengthForSingleLineBlocks value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6549
    ] ifFalse: [
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6550
        (UserPreferences reset; current) addAll: oldUserPreferences
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6551
    ].
4398
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  6552
"
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  6553
    self formattingConfigurationDialog
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  6554
"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6555
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6556
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6557
syntaxColorConfigurationDialog
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6558
    |box frame exampleView y
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6559
     resources exampleText coloredText recolorAction
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6560
     syntaxColor syntaxColors colorMenu oldUserPreferences
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6561
     syntaxEmphasises syntaxColorSelector syntaxEmphasisSelector syntaxColoringBox
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6562
     syntaxEmphasisesBox syntaxColoringResetButton b resetList
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6563
     resetListBox currentUserPrefs|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6564
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6565
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6566
    currentUserPrefs := UserPreferences current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6567
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6568
    exampleText :=
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6569
'methodSelector:methodArg
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6570
    "method comment:
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6571
     some stupid code to show the current settings"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6572
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6573
    |methodVar|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6574
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6575
    "/ another comment ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6576
    self at:methodArg.        "/ a message
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6577
    self fooBarBaz:methodVar. "/ a bad message
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6578
    methodVar := Array new:1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6579
    unknonVar := 1.           "/ a bad variable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6580
    UnknonVar := 1.           "/ another bad variable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6581
    "self bar:methodVar.  detect commented code easily"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6582
    1 to:5 do:[:i | self at:i + 1].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6583
    Transcript showCR:''some string'' , #someSymbol.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6584
    ^ self.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6585
'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6586
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6587
    coloredText := '' asValue.
12928
a59e4bd2adcc Do not use obsolete methods
Stefan Vogel <sv@exept.de>
parents: 12842
diff changeset
  6588
    recolorAction := [ coloredText value:(SyntaxHighlighter formatMethodSource:exampleText in:nil) ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6589
    recolorAction value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6590
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6591
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6592
    "/ create a box on those values ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6593
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6594
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6595
    box label:(resources string:'Syntax Colors').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6596
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6597
    frame := View new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6598
    frame extent:1.0 @ 200.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6599
    frame borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6600
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6601
    exampleView := HVScrollableView for:TextView in:frame.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6602
    exampleView model:coloredText.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6603
    exampleView origin:0.0@0.0 corner:1.0@1.0; inset:2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6604
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6605
    frame topInset:box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6606
    box addComponent:frame withExtent:1.0@200.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6607
    box makeTabable:exampleView.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6608
    frame width:1.0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6609
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6610
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6611
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6612
    oldUserPreferences := currentUserPrefs copy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6613
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6614
    syntaxColoringBox := box addComboListOn: (syntaxColors := SelectionInList with:UserPreferences syntaxColorNames initialSelection:1).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6615
    syntaxColorSelector    := [(syntaxColors selection replChar:$  withString: '') asLowercaseFirst asSymbol].
14086
f05ca0ec3ea8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14075
diff changeset
  6616
    syntaxEmphasisSelector := [((syntaxColorSelector value upToAll: 'Color'), 'Emphasis') asLowercaseFirst asSymbol].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6617
    syntaxColor := (currentUserPrefs perform: syntaxColorSelector value) asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6618
    colorMenu := ColorMenu new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6619
    colorMenu model: syntaxColor.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6620
    syntaxColor onChangeEvaluate:
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6621
        [currentUserPrefs at:  syntaxColorSelector value put: syntaxColor value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6622
         recolorAction value.].
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6623
    syntaxColors onChangeEvaluate:
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6624
        [|eVal|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6625
         syntaxColor value: (currentUserPrefs perform:syntaxColorSelector value).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6626
         eVal := currentUserPrefs perform: syntaxEmphasisSelector value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6627
         eVal isArray ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6628
            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
  6629
                eVal := #'red underwave'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6630
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6631
            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
  6632
                eVal := #'bold+red underwave'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6633
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6634
            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
  6635
                eVal := #'bold+red underline'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6636
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6637
            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
  6638
                eVal := #'italic+red underwave'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6639
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6640
            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
  6641
                eVal := #'italic+red underline'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6642
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6643
         ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6644
         syntaxEmphasises selection: eVal.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6645
         recolorAction value.].
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6646
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6647
    syntaxEmphasises := SelectionInList
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6648
                            with:#(
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6649
                                    normal
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6650
                                    underline
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6651
                                    #'red underline'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6652
                                    underwave
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6653
                                    #'red underwave'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6654
                                    bold
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6655
                                    boldUnderline
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6656
                                    #'bold+red underline'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6657
                                    boldUnderwave
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6658
                                    #'bold+red underwave'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6659
                                    italic
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6660
                                    italicUnderline
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6661
                                    #'italic+red underline'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6662
                                    italicUnderwave
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6663
                                    #'italic+red underwave'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6664
                                    reverse
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6665
                                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6666
                            initialSelection:1.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6667
    syntaxEmphasisesBox := box addComboListOn:syntaxEmphasises.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6668
    syntaxEmphasises
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6669
        onChangeEvaluate:[ |em|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6670
            em := syntaxEmphasises selection.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6671
            em notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6672
                em := em asSymbol.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6673
                em == #'red underline' ifTrue:[ em := Array with:#underline with:(#underlineColor->Color red)].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6674
                em == #'red underwave' ifTrue:[ em := Array with:#underwave with:(#underlineColor->Color red)].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6675
                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
  6676
                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
  6677
                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
  6678
                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
  6679
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6680
                currentUserPrefs at: syntaxEmphasisSelector value put:em.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6681
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6682
            recolorAction value
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6683
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6684
    syntaxColors changed:#value. "/ to force initial update of emphasis
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6685
    box addComponent:colorMenu tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6686
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6687
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6688
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6689
    b := Button new label: (resources string:'reset to:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6690
    b action:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6691
        |resetSelector|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6692
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6693
        resetSelector := (currentUserPrefs listOfPredefinedSyntaxColoringSchemes
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6694
                             collect:[:eachEntry | eachEntry first])
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6695
                                 at:resetList selectionIndex.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6696
        currentUserPrefs perform:resetSelector.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6697
        recolorAction value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6698
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6699
    syntaxColoringResetButton := box addComponent:b.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6700
    box makeTabable:syntaxColoringResetButton.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6701
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6702
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6703
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6704
    resetList := SelectionInList
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6705
                            with:(currentUserPrefs listOfPredefinedSyntaxColoringSchemes
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6706
                                        collect:[:eachEntry | eachEntry second])
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6707
                            initialSelection:1.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6708
    resetListBox := box addComboListOn:resetList.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6709
    box makeTabable:resetListBox.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6710
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6711
    syntaxColoringBox enable.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6712
    colorMenu enable.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6713
    syntaxEmphasisesBox enable.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6714
    syntaxColoringResetButton enable.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6715
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6716
    box
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6717
"/        addHelpButtonFor:'Launcher/sourceSettings.html';
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6718
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6719
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6720
    box stickAtBottomWithVariableHeight:frame.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6721
    box stickAtBottomWithFixHeight:syntaxColoringBox.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6722
    box stickAtBottomWithFixHeight:syntaxEmphasisesBox.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6723
    box stickAtBottomWithFixHeight:colorMenu.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6724
    box stickAtBottomWithFixHeight:syntaxColoringResetButton left:0.0 right:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6725
    box stickAtBottomWithFixHeight:resetListBox left:0.5 right:1.0.
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
    "/ show the box ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6729
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6730
    box extent:600@400.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6731
    box openModal.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6732
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6733
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6734
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6735
    "/
5944
4fef6e1d18ff Use #addAll: instead of #declareAllFrom:, since #declareAllFrom:
Stefan Vogel <sv@exept.de>
parents: 5917
diff changeset
  6736
    box accepted ifFalse: [
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6737
        (UserPreferences reset; current) addAll:oldUserPreferences
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6738
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6739
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6740
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6741
    "Modified: / 16.4.1998 / 17:18:16 / ca"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6742
    "Modified: / 7.7.1999 / 00:27:02 / cg"
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  6743
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  6744
2596
a2c3d90290ba formatter setup added;
Claus Gittinger <cg@exept.de>
parents: 2584
diff changeset
  6745
!AbstractLauncherApplication::LauncherDialogs class methodsFor:'interface specs'!
a2c3d90290ba formatter setup added;
Claus Gittinger <cg@exept.de>
parents: 2584
diff changeset
  6746
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6747
cvsSetupSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6748
    "This resource specification was automatically generated
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6749
     by the UIPainter of ST/X."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6750
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6751
    "Do not manually edit this!! If it is corrupted,
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6752
     the UIPainter may not be able to read the specification."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6753
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6754
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6755
     UIPainter new openOnClass:AbstractLauncherApplication::LauncherDialogs andSelector:#cvsSetupSpec
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
    <resource: #canvas>
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6759
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6760
    ^
5153
0030b86728bf Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 5146
diff changeset
  6761
     #(FullSpec
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6762
        name: cvsSetupSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6763
        window:
5153
0030b86728bf Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 5146
diff changeset
  6764
       (WindowSpec
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6765
          label: 'CVS Setup'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6766
          name: 'CVS Setup'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6767
          min: (Point 436 316)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6768
          bounds: (Rectangle 14 46 450 400)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6769
        )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6770
        component:
5153
0030b86728bf Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 5146
diff changeset
  6771
       (SpecCollection
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6772
          collection: (
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6773
           (LabelSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6774
              label: 'CVS BinDirectory:'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6775
              name: 'Label1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6776
              layout: (LayoutFrame 0 0.0 36 0 40 0.25 53 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6777
              level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6778
              translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6779
              adjust: right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6780
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6781
           (InputFieldSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6782
              name: 'BinDirectoryField'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6783
              layout: (LayoutFrame 44 0.25 34 0 -1 1 56 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6784
              tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6785
              model: cvsBinDirectoryHolder
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6786
              acceptChannel: acceptChannel
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6787
              acceptOnPointerLeave: false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6788
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6789
           (DividerSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6790
              name: 'Separator3'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6791
              layout: (LayoutFrame 0 0.0 60 0 0 1.0 64 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6792
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6793
           (LabelSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6794
              label: 'CVS SourceCodeManager setup'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6795
              name: 'label'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6796
              layout: (LayoutFrame 1 0.0 3 0 -1 1.0 20 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6797
              translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6798
              adjust: left
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6799
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6800
           (LabelSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6801
              label: 'CVSRoot default:'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6802
              name: 'defaultCvsRootLabel'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6803
              layout: (LayoutFrame 0 0.0 71 0 40 0.25 88 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6804
              level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6805
              translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6806
              adjust: right
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
           (ComboBoxSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6809
              name: 'cvsRootComboBox'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6810
              layout: (LayoutFrame 44 0.25 71 0 -1 1.0 93 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6811
              tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6812
              model: cvsRootHolder
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6813
              immediateAccept: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6814
              acceptOnLeave: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6815
              acceptOnReturn: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6816
              acceptOnTab: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6817
              acceptOnLostFocus: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6818
              acceptChannel: acceptChannel
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6819
              acceptOnPointerLeave: false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6820
              comboList: cvsRootPrototypeList
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6821
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6822
           (DividerSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6823
              name: 'Separator1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6824
              layout: (LayoutFrame 0 0.0 96 0 0 1.0 100 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6825
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6826
           (LabelSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6827
              label: 'CVSRoot per Module:'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6828
              name: 'knownModulesLabel'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6829
              layout: (LayoutFrame 0 0.0 109 0 40 0.25 126 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6830
              translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6831
              adjust: right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6832
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6833
           (SequenceViewSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6834
              name: 'List1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6835
              layout: (LayoutFrame 44 0.25 104 0 -1 1 202 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6836
              tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6837
              model: selectedPerModuleRoot
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6838
              hasHorizontalScrollBar: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6839
              hasVerticalScrollBar: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6840
              miniScrollerHorizontal: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6841
              useIndex: false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6842
              sequenceList: listOfModules
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6843
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6844
           (LabelSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6845
              label: 'Module:'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6846
              name: 'moduleLabel'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6847
              layout: (LayoutFrame 0 0.0 209 0 40 0.25 226 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6848
              translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6849
              adjust: right
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
           (InputFieldSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6852
              name: 'perModuleRootModuleEntryField'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6853
              layout: (LayoutFrame 44 0.25 205 0 -1 1 227 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6854
              tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6855
              model: perModuleRootModule
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6856
              acceptChannel: acceptChannel
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6857
              acceptOnPointerLeave: false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6858
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6859
           (LabelSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6860
              label: 'CVSRoot:'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6861
              name: 'cvsRootLabel'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6862
              layout: (LayoutFrame 0 0.0 236 0 40 0.25 253 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6863
              translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6864
              adjust: right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6865
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6866
           (ComboBoxSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6867
              name: 'perModuleRootComboBox'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6868
              layout: (LayoutFrame 44 0.25 232 0 -1 1.0 254 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6869
              tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6870
              model: perModuleRoot
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6871
              immediateAccept: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6872
              acceptOnLeave: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6873
              acceptOnReturn: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6874
              acceptOnTab: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6875
              acceptOnLostFocus: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6876
              acceptChannel: acceptChannel
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6877
              acceptOnPointerLeave: false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6878
              comboList: cvsRootPrototypeList
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6879
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6880
           (HorizontalPanelViewSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6881
              name: 'HorizontalPanel1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6882
              layout: (LayoutFrame 44 0.25 258 0 -1 1 289 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6883
              horizontalLayout: fitSpace
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6884
              verticalLayout: center
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6885
              horizontalSpace: 3
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6886
              verticalSpace: 3
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6887
              component:
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6888
             (SpecCollection
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6889
                collection: (
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6890
                 (ActionButtonSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6891
                    label: 'Add/Apply'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6892
                    name: 'addButton'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6893
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6894
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6895
                    model: addPerModuleRoot
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6896
                    extent: (Point 136 22)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6897
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6898
                 (ActionButtonSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6899
                    label: 'Remove'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6900
                    name: 'removeButton'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6901
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6902
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6903
                    model: removePerModuleRoot
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6904
                    enableChannel: removeEnabled
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6905
                    extent: (Point 137 22)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6906
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6907
                 )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6908
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6909
              )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6910
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6911
           (DividerSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6912
              name: 'Separator2'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6913
              layout: (LayoutFrame 0 0.0 -45 1 0 1.0 -34 1)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6914
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6915
           (HorizontalPanelViewSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6916
              name: 'buttonPanel'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6917
              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
  6918
              horizontalLayout: fitSpace
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6919
              verticalLayout: center
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6920
              horizontalSpace: 3
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6921
              verticalSpace: 3
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6922
              ignoreInvisibleComponents: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6923
              reverseOrderIfOKAtLeft: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6924
              component:
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6925
             (SpecCollection
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6926
                collection: (
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6927
                 (ActionButtonSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6928
                    label: 'Cancel'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6929
                    name: 'cancelButton'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6930
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6931
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6932
                    model: cancel
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6933
                    extent: (Point 141 21)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6934
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6935
                 (ActionButtonSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6936
                    label: 'Help'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6937
                    name: 'helpButton'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6938
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6939
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6940
                    model: help
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6941
                    extent: (Point 141 21)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6942
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6943
                 (ActionButtonSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6944
                    label: 'OK'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6945
                    name: 'okButton'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6946
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6947
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6948
                    model: accept
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6949
                    isDefault: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6950
                    extent: (Point 142 21)
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
                 )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6953
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6954
              )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6955
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6956
           )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6957
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6958
        )
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6959
      )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6960
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6961
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6962
formatterDialogSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6963
    "This resource specification was automatically generated
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6964
     by the UIPainter of ST/X."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6965
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6966
    "Do not manually edit this!! If it is corrupted,
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6967
     the UIPainter may not be able to read the specification."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6968
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6969
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6970
     UIPainter new openOnClass:AbstractLauncherApplication::LauncherDialogs andSelector:#formatterDialogSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6971
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6972
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6973
    <resource: #canvas>
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6974
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6975
    ^
5153
0030b86728bf Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 5146
diff changeset
  6976
     #(FullSpec
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6977
        name: formatterDialogSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6978
        window:
5153
0030b86728bf Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 5146
diff changeset
  6979
       (WindowSpec
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6980
          label: 'Formatting parameters'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6981
          name: 'Formatting parameters'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6982
          min: (Point 10 10)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6983
          bounds: (Rectangle 14 46 610 629)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6984
        )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6985
        component:
5153
0030b86728bf Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 5146
diff changeset
  6986
       (SpecCollection
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6987
          collection: (
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6988
           (LabelSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6989
              label: 'Sample output:'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6990
              name: 'Label2'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6991
              layout: (LayoutFrame 0 0.0 4 0 0 1.0 26 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6992
              translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6993
              adjust: left
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6994
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6995
           (TextEditorSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6996
              name: 'sampleTextView'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6997
              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
  6998
              level: -1
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6999
              model: formattedText
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7000
              hasHorizontalScrollBar: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7001
              hasVerticalScrollBar: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7002
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7003
           (FramedBoxSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7004
              label: 'Parameters'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7005
              name: 'FramedBox1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7006
              layout: (LayoutFrame 0 0.0 -225 1 0 1.0 -30 1)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7007
              labelPosition: topLeft
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7008
              translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7009
              component:
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7010
             (SpecCollection
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7011
                collection: (
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7012
                 (LabelSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7013
                    label: 'Max length for single line blocks:'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7014
                    name: 'Label1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7015
                    layout: (LayoutFrame 185 0.0 127 0 66 0.7 153 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7016
                    level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7017
                    adjust: right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7018
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7019
                 (CheckBoxSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7020
                    label: 'Space around temporaries '
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7021
                    name: 'checkBox'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7022
                    layout: (LayoutFrame 2 0 3 0 260 0 32 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7023
                    level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7024
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7025
                    model: spaceAroundTemporaries
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7026
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7027
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7028
                 (CheckBoxSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7029
                    label: 'Blank line after local var declaration'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7030
                    name: 'CheckBox1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7031
                    layout: (LayoutFrame 267 0 3 0 567 0 32 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7032
                    level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7033
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7034
                    model: emptyLineAfterTemporaries
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7035
                    translateLabel: true
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
                 (CheckBoxSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7038
                    label: 'Space after ''^'''
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7039
                    name: 'CheckBox2'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7040
                    layout: (LayoutFrame 2 0 31 0 260 0 60 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7041
                    level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7042
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7043
                    model: spaceAfterReturnToken
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7044
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7045
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7046
                 (CheckBoxSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7047
                    label: 'Space after '':'' in keywords'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7048
                    name: 'CheckBox3'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7049
                    layout: (LayoutFrame 267 0 31 0 567 0 60 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7050
                    level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7051
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7052
                    model: spaceAfterKeywordSelector
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7053
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7054
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7055
                 (CheckBoxSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7056
                    label: 'C-Style blocks'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7057
                    name: 'CheckBox4'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7058
                    layout: (LayoutFrame 2 0 59 0 260 0 88 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7059
                    level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7060
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7061
                    model: cStyleBlocks
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7062
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7063
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7064
                 (InputFieldSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7065
                    name: 'editField'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7066
                    layout: (LayoutFrame 74 0.7 93 0 -38 1.0 119 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7067
                    level: -1
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7068
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7069
                    model: tabIndent
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7070
                    type: number
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7071
                    immediateAccept: false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7072
                    acceptOnLeave: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7073
                    acceptOnReturn: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7074
                    acceptOnTab: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7075
                    acceptOnLostFocus: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7076
                    acceptOnPointerLeave: true
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
                 (LabelSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7079
                    label: 'Indent:'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7080
                    name: 'label'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7081
                    layout: (LayoutFrame 242 0.0 93 0 66 0.7 119 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7082
                    level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7083
                    adjust: right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7084
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7085
                 (InputFieldSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7086
                    name: 'EntryField1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7087
                    layout: (LayoutFrame 74 0.7 127 0 -38 1.0 153 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7088
                    level: -1
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7089
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7090
                    model: maxLengthForSingleLineBlocks
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7091
                    type: number
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7092
                    immediateAccept: false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7093
                    acceptOnLeave: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7094
                    acceptOnReturn: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7095
                    acceptOnTab: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7096
                    acceptOnLostFocus: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7097
                    acceptOnPointerLeave: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7098
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7099
                 (PopUpListSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7100
                    label: 'Reset to...'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7101
                    name: 'PopUpList1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7102
                    layout: (LayoutFrame 2 0 129 0 127 0 151 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7103
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7104
                    model: resetValue
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7105
                    menu: resetList
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7106
                    useIndex: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7107
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7108
                 (CheckBoxSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7109
                    label: 'Block args on new line'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7110
                    name: 'CheckBox5'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7111
                    layout: (LayoutFrame 267 0 59 0 567 0 88 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7112
                    level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7113
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7114
                    model: blockArgumentsOnNewLine
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7115
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7116
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7117
                 )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7118
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7119
              )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7120
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7121
           (HorizontalPanelViewSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7122
              name: 'horizontalPanelView'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7123
              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
  7124
              level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7125
              horizontalLayout: fitSpace
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7126
              verticalLayout: center
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7127
              horizontalSpace: 4
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7128
              verticalSpace: 4
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7129
              ignoreInvisibleComponents: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7130
              component:
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7131
             (SpecCollection
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7132
                collection: (
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7133
                 (ActionButtonSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7134
                    label: 'Cancel'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7135
                    name: 'button'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7136
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7137
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7138
                    model: cancel
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7139
                    useDefaultExtent: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7140
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7141
                 (ActionButtonSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7142
                    label: 'OK'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7143
                    name: 'Button1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7144
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7145
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7146
                    model: accept
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7147
                    isDefault: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7148
                    useDefaultExtent: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7149
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7150
                 )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7151
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7152
              )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7153
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7154
           )
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
        )
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7157
      )
2596
a2c3d90290ba formatter setup added;
Claus Gittinger <cg@exept.de>
parents: 2584
diff changeset
  7158
! !
a2c3d90290ba formatter setup added;
Claus Gittinger <cg@exept.de>
parents: 2584
diff changeset
  7159
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7160
!AbstractLauncherApplication::PackageLoadDialog class methodsFor:'documentation'!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7161
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7162
documentation
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7163
"
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7164
    handwritten q&d dialog to load packages.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7165
    TODO:
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7166
        rewrite using UI builder
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7167
"
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7168
! !
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7169
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7170
!AbstractLauncherApplication::PackageLoadDialog class methodsFor:'opening'!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7171
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7172
open
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7173
    self new openLoadPackageDialog
16209
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7174
!
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7175
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7176
openModal
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7177
    self new openLoadPackageDialogModal:true
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7178
! !
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7179
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7180
!AbstractLauncherApplication::PackageLoadDialog methodsFor:'initialize & release'!
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7181
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7182
initializeIcons
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7183
    folderIcon := ToolbarIconLibrary directoryOpen18x18Icon.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7184
    "/ folderHalfGreyIcon := ToolbarIconLibrary directoryOpenHalfGrey18x18Icon.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7185
    packageIcon := ToolbarIconLibrary packageOpen24x24Icon.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7186
    applicationIcon := ToolbarIconLibrary makeYellow22x22Icon1.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7187
    greyFolderIcon := folderIcon asGrayImageDepth:8.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7188
    greyPackageIcon := packageIcon asGrayImageDepth:8.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7189
    greyApplicationIcon := applicationIcon asGrayImageDepth:(applicationIcon depth min:8).
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7190
!
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7191
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7192
release
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7193
    |p|
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7194
    
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7195
    (p := backgroundPackageFindProcess) notNil ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7196
        p isDead ifFalse:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7197
            p terminate
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7198
        ]
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7199
    ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7200
    super release
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7201
! !
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7202
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7203
!AbstractLauncherApplication::PackageLoadDialog methodsFor:'opening'!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7204
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7205
openLoadPackageDialog
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7206
    "open a dialog showing wellknown packages (listed in the packages directory)
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7207
     and offer to load the selected one(s).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7208
     TODO: make this a little app instead of an ad-hoc dialog, 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7209
     add remote packages (central goody repository?)"    
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7210
16209
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7211
    self openLoadPackageDialogModal:false.
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7212
!
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7213
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7214
openLoadPackageDialogModal:modal
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7215
    "open a dialog showing wellknown packages (listed in the packages directory)
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7216
     and offer to load the selected one(s).
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7217
     TODO: make this a little app instead of an ad-hoc dialog, 
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7218
     add remote packages (central goody repository?)"    
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7219
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7220
    |list dialog filter v   
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7221
     browse selectionChangeAction 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7222
     selectedPackageLabel infoView monticelloLabel|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7223
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7224
    alreadyLoadedString := (resources string:' (already loaded)') allItalic.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7225
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7226
    self initializeIcons.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7227
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7228
    selectedPackageHolder := ValueHolder with:nil.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7229
    infoTextHolder := ValueHolder with:nil.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7230
    filterHolder := ValueHolder with:nil.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7231
    itemsByPath := Dictionary new.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7232
    packageIdByItem := IdentityDictionary new.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7233
    pathByItem := IdentityDictionary new.  
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7234
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7235
    Class withoutUpdatingChangesDo:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7236
        myHierarchicalItemWithLabelAndIcon := 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7237
            HierarchicalItemWithLabelAndIcon 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7238
                subclass:#myHierarchicalItemWithLabelAndIcon
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7239
                instanceVariableNames:'type info'
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7240
                classVariableNames:''
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7241
                poolDictionaries:''
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7242
                category:nil
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7243
                inEnvironment:nil.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7244
            myHierarchicalItemWithLabelAndIcon compile:'type ^ type'.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7245
            myHierarchicalItemWithLabelAndIcon compile:'type:aSymbol type := aSymbol'.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7246
            myHierarchicalItemWithLabelAndIcon compile:'info ^ info'.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7247
            myHierarchicalItemWithLabelAndIcon compile:'info:anObject info := anObject'.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7248
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7249
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7250
    list := HierarchicalList new.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7251
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7252
    masterRoot := myHierarchicalItemWithLabelAndIcon new.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7253
    masterRoot icon:(ToolbarIconLibrary stxHomeIcon).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7254
    masterRoot label:(resources string:'local ').
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7255
    masterRoot type:#localRoot.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7256
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7257
    root := myHierarchicalItemWithLabelAndIcon new.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7258
    root icon:folderIcon.
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
  7259
    root label:((resources string:'[Compiled Packages]') asText allItalic withColor:Color grey).
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7260
    root type:#compiledPackagesRoot.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7261
    masterRoot add:root.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7262
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7263
    monticelloRoot := myHierarchicalItemWithLabelAndIcon new.
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
  7264
    monticelloLabel := ((resources string:'[Monticello Packages]') asText allItalic withColor:Color grey).
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7265
    monticelloRoot type:#monticelloRoot.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7266
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7267
    (MCRepositoryGroup isNil or:[MCRepositoryGroup isLoaded not]) ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7268
        monticelloRoot icon:greyFolderIcon.
16506
f8e9cf3bc8a7 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16446
diff changeset
  7269
        monticelloRoot label:monticelloLabel, (' (Monticello Support not Loaded)' withColor:Color grey).
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7270
    ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7271
        monticelloRoot icon:folderIcon.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7272
        monticelloRoot label:monticelloLabel.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7273
        self getMonticelloRepositories.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7274
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7275
    masterRoot add:monticelloRoot.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7276
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7277
    self readPackageTree.
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7278
    self readOtherPackageTreesInBackground.
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7279
    masterRoot expand.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7280
    root expand.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7281
    list root:masterRoot.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7282
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7283
    PreviousPackageDialogItems notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7284
        PreviousPackageDialogItems keysAndValuesDo:[:path :prevItem |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7285
            |newItem|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7286
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7287
            newItem := itemsByPath at:path ifAbsent:nil.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7288
            newItem notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7289
                prevItem isExpanded ifTrue:[ newItem expand ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7290
            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7291
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7292
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7293
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7294
    selectionChangeAction :=
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7295
        [:selectionIndices | self selectionChangeAction:selectionIndices].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7296
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7297
    dialog := Dialog new.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7298
    dialog label:(resources string:'Load Package').
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7299
    dialog addButton:(loadButton := Button label:(resources string:'Load') action:[self loadAction:false]) beReturnButton. 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7300
    dialog addButton:(loadAndBrowseButton := Button label:(resources string:'Load & Browse') action:[self loadAction:true]).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7301
    dialog addAbortButtonLabelled:(resources string:'Close').
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7302
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7303
    loadButton enabled:false.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7304
    loadAndBrowseButton enabled:false.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7305
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7306
    filter := EditField new.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7307
    filter emptyFieldReplacementText:(resources string:'Filter Pattern').
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7308
    filter immediateAccept:true.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7309
    filter model: filterHolder.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7310
    filterHolder onChangeEvaluate:[self filterChangedAction].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7311
    dialog
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7312
        addLabelledField:filter
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7313
        label:(resources string:'Quick Find:') 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7314
        adjust:#left tabable:true from:0.0 to:1.0 separateAtX:150.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7315
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7316
    "/ dialog addComponent:filter.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7317
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7318
    v := HVScrollableView for:HierarchicalListView.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7319
    hierarchicalListView := v scrolledView.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7320
    hierarchicalListView multipleSelectOk:true.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7321
    hierarchicalListView preferredExtent:(400 @ 300).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7322
    hierarchicalListView doubleClickAction:[:index | self loadAction:false. dialog okPressed].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7323
    hierarchicalListView list:list.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7324
    hierarchicalListView action:selectionChangeAction.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7325
    hierarchicalListView menuHolder:[ self itemMenu].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7326
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7327
    dialog addComponent:v.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7328
    selectedPackageLabel := dialog addTextLabelOn:(selectedPackageHolder) adjust:#left.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7329
    infoView := dialog addTextBoxOn:infoTextHolder class:TextView withNumberOfLines:5 hScrollable:true vScrollable:true.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7330
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7331
    dialog stickAtBottomWithVariableHeight:v.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7332
    dialog stickAtBottomWithFixHeight:selectedPackageLabel.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7333
    dialog stickAtBottomWithFixHeight:infoView.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7334
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7335
    PreviousPackageDialogExtent notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7336
        dialog extent:PreviousPackageDialogExtent
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7337
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7338
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7339
    browse := false.
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7340
    dialog application:self.
16209
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7341
    modal ifTrue:[
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7342
        dialog openModalAtPointer.
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7343
    ] ifFalse:[
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7344
        dialog openModelessAtPointer.
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7345
    ].
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7346
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7347
    "/ remember the expand/collapse status
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7348
    PreviousPackageDialogItems := itemsByPath.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7349
    PreviousPackageDialogExtent := dialog extent.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7350
! !
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7351
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7352
!AbstractLauncherApplication::PackageLoadDialog methodsFor:'private'!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7353
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7354
addItemWithPackagePath:path target:target asApplication:isApplication toRoot:aRoot
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7355
    |item isAlreadyLoaded defClass packageID|
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7356
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7357
    "/ see if already loaded
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7358
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7359
    packageID := (path size > 1) 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7360
                    ifTrue:[ path first , ':' , ((path copyFrom:2) asStringWith:$/) ]
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7361
                    ifFalse:[ path first ].
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
    item := self getItemByPath:path packageID:packageID under:aRoot.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7364
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7365
    isAlreadyLoaded := false.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7366
    Error handle:[:ex |
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
  7367
        item label:(item label , (' ERROR - please rebuild!!' withColor:Color red)).
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7368
    ] do:[    
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7369
        isAlreadyLoaded := 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7370
            (defClass := ProjectDefinition definitionClassForPackage:packageID) notNil
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7371
            and:[ defClass isLoaded
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7372
            and:[ defClass isFullyLoaded ]].
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
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7375
    target notNil ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7376
        ((target startsWith:'lib ') or:[(target startsWith:'app ')]) ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7377
            pathByItem at:item put:(target copyFrom:(target indexOfSeparator + 1)) withoutSeparators.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7378
        ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7379
    ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7380
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7381
    "/ 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
  7382
    (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
  7383
        isAlreadyLoaded ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7384
            item icon:(isApplication ifTrue:[greyApplicationIcon] ifFalse:[greyPackageIcon]). 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7385
            item label:(item label , alreadyLoadedString)
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7386
        ] ifFalse:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7387
            item icon:(isApplication ifTrue:[applicationIcon] ifFalse:[packageIcon]). 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7388
        ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7389
    ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7390
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7391
    "/ if it is not already loaded, make all parents non-grey
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7392
    isAlreadyLoaded ifFalse:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7393
        path size-1 to:1 by:-1 do:[:n |
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7394
            |parentPath parentItem|
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7395
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7396
            parentPath := path copyTo:n.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7397
            parentItem := self getItemByPath:parentPath packageID:packageID under:aRoot.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7398
            parentItem icon == greyFolderIcon ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7399
                parentItem icon:folderIcon.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7400
"/                        ] ifFalse:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7401
"/                            parentItem icon == greyApplicationIcon ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7402
"/                                parentItem icon:applicationIcon.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7403
"/                            ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7404
            ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7405
        ]
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7406
    ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7407
!
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7408
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7409
filterChangedAction
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7410
    |matchingItems filterPattern isMatch firstMatchingItem|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7411
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7412
    filterPattern := filterHolder value.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7413
    filterPattern isEmptyOrNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7414
        "/ nothing
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7415
        root recursiveDo:[:item |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7416
            item label:(item label copy asText allNonBold withoutAnyColorEmphasis).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7417
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7418
    ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7419
        filterPattern := filterPattern asLowercase.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7420
        isMatch := filterPattern includesMatchCharacters.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7421
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7422
        matchingItems := OrderedCollection new.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7423
        masterRoot recursiveDo:[:item |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7424
            |itemLabel itemPackage|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7425
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7426
            itemLabel := item label.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7427
            itemPackage := packageIdByItem at:item ifAbsent:''.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7428
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7429
            ((isMatch and:[itemLabel matches:filterPattern caseSensitive:false])
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7430
                or:[ (isMatch not and:[ itemLabel asLowercase includesString:filterPattern ])
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7431
                or:[ (isMatch and:[itemPackage matches:filterPattern caseSensitive:false])
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7432
                or:[ isMatch not and:[ itemPackage asLowercase includesString:filterPattern ]]]])
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7433
            ifTrue:[ 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7434
                matchingItems add:item.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7435
            ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7436
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7437
        matchingItems isEmpty ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7438
            "/ nothing found
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7439
            root recursiveDo:[:item |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7440
                item label:(item label copy asText allNonBold withoutAnyColorEmphasis).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7441
            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7442
            Screen current beep.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7443
        ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7444
            "/ collapse all and fully expand all matching items
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7445
            masterRoot recursiveDo:[:item |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7446
                item collapse.
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
  7447
                item label:(item label copy asText allNonBold withColor:Color grey).
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7448
            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7449
            firstMatchingItem := nil.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7450
            matchingItems do:[:item |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7451
                item label:(item label copy asText allBold withoutAnyColorEmphasis).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7452
                item makeVisible.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7453
                firstMatchingItem := firstMatchingItem ? item.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7454
            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7455
            hierarchicalListView makeLineVisible:firstMatchingItem listIndex.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7456
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7457
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7458
!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7459
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7460
getItemByPath:path packageID:packageID under:aRoot
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7461
    "/ ensures an item for a path and returns it.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7462
    "/ if not already present, the item is created as a folder
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7463
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7464
    |item parent subPackageID|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7465
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7466
    item := path isEmpty   
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7467
            ifTrue:[aRoot]
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7468
            ifFalse:[ itemsByPath at:( {aRoot label},path) ifAbsent:nil ].
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7469
    item isNil ifTrue:[
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7470
        parent := self getItemByPath:(path copyButLast) packageID:packageID under:aRoot.
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7471
        item := myHierarchicalItemWithLabelAndIcon new
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7472
                children:#();
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7473
                icon:greyFolderIcon; 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7474
                label:path last.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7475
        parent add:item.
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7476
        itemsByPath at:( {aRoot label},path) put:item.
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7477
        subPackageID := path size > 1 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7478
                        ifTrue:[ path first , ':' , ((path copyFrom:2) asStringWith:$/) ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7479
                        ifFalse:[ path first ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7480
        packageIdByItem at:item put:subPackageID.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7481
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7482
    ^ item
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7483
!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7484
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7485
getMonticelloRepositories
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7486
    (MCRepositoryGroup default repositories 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7487
        asSortedCollection:[:a :b |a displayString < b displayString])
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7488
            do:[:each |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7489
                |reposItem|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7490
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7491
                reposItem := myHierarchicalItemWithLabelAndIcon new.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7492
                reposItem icon:folderIcon.
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
  7493
                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
  7494
                reposItem type:#monticelloRepository.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7495
                reposItem info:each.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7496
                monticelloRoot add:reposItem.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7497
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7498
                each allPackageNames asSortedCollection do:[:eachPackage |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7499
                    |packageItem|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7500
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7501
                    packageItem := myHierarchicalItemWithLabelAndIcon new.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7502
                    packageItem icon:packageIcon.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7503
                    packageItem label:eachPackage.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7504
                    packageItem type:#monticelloPackage.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7505
                    reposItem add:packageItem.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7506
                ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7507
            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7508
!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7509
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7510
itemMenu
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7511
    |item m itemType package defClass|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7512
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7513
    hierarchicalListView selectionValue notEmptyOrNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7514
        item := hierarchicalListView selectionValue first.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7515
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7516
        itemType := item type.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7517
        ( 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7518
            #( #localRoot #monticelloRoot #compiledPackagesRoot ) includes:itemType
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7519
        ) ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7520
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7521
            package := packageIdByItem at:item ifAbsent:nil.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7522
            package notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7523
                defClass := package asPackageId projectDefinitionClass.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7524
            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7525
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7526
            m := Menu new.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7527
            m addItem:(MenuItem 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7528
                        label: (resources string:'Load')
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7529
                        itemValue: 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7530
                            [
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7531
                                package notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7532
                                    self loadPackageAndUpdate:package browse:false subPackages:false item:item.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7533
                                    "/ loadPackageAndUpdate value:package value:false value:item.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7534
                                ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7535
                            ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7536
                        enabled:package notNil).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7537
            m addItem:(MenuItem 
16331
0adc4c21c1b1 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16330
diff changeset
  7538
                        label: (resources string:'Load with All Subpackages')
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7539
                        itemValue: 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7540
                            [
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7541
                                package notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7542
                                    self loadPackageAndUpdate:package browse:false subPackages:true item:item.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7543
                                    "/ loadPackageAndUpdate value:package value:false value:item.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7544
                                ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7545
                            ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7546
                        enabled:package notNil).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7547
            m addSeparator. 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7548
            m addItem:(MenuItem 
16297
52295067aa1a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16235
diff changeset
  7549
                        label: (resources string:'Open File Browser on Package''s Folder')
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7550
                        itemValue: 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7551
                            [
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7552
                                |dir|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7553
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7554
                                package notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7555
                                    dir := Smalltalk packageDirectoryForPackageId:package.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7556
                                    dir notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7557
                                        FileBrowser default openOn:dir.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7558
                                    ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7559
                                        Dialog warn:(resources string:'Directory not present/readable: "%1"' with:dir)
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7560
                                    ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7561
                                ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7562
                            ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7563
                        enabled:package notNil).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7564
            m addSeparator. 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7565
            m addItem:(MenuItem 
16297
52295067aa1a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16235
diff changeset
  7566
                        label: (resources string:'Browse Package Definition')
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7567
                        itemValue: 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7568
                            [
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7569
                                defClass notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7570
                                    SystemBrowser default openInClass:defClass class
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7571
                                ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7572
                            ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7573
                        enabled:defClass notNil).
16297
52295067aa1a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16235
diff changeset
  7574
            m addItem:(MenuItem 
52295067aa1a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16235
diff changeset
  7575
                        label: (resources string:'Browse Package')
52295067aa1a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16235
diff changeset
  7576
                        itemValue: 
52295067aa1a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16235
diff changeset
  7577
                            [
52295067aa1a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16235
diff changeset
  7578
                                Tools::NewSystemBrowser openOnPackage:package
52295067aa1a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16235
diff changeset
  7579
                            ]
52295067aa1a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16235
diff changeset
  7580
                        enabled:defClass notNil).
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7581
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7582
            item type == #monticelloPackage ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7583
                m addItem:(MenuItem 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7584
                            label: (resources string:'Browse Monticello Package')
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7585
                            itemValue: [
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7586
                                |repos|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7587
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7588
                                repos := item parent info.                    
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7589
                                MCRepositoryBrowser openOnRepository:repos forPackage:item label.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7590
                            ]).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7591
            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7592
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7593
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7594
    ^ m
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7595
!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7596
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7597
loadAction:doBrowse 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7598
    "the button's load action"
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7599
    
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7600
    (hierarchicalListView selectionValue) do:[:eachSelectedItem |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7601
        |package repos|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7602
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7603
        eachSelectedItem type == #monticelloRepository ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7604
            repos := eachSelectedItem info.                    
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7605
            MCRepositoryBrowser openOnRepository:repos forPackage:nil.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7606
        ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7607
            eachSelectedItem type == #monticelloPackage ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7608
                repos := eachSelectedItem parent info.                    
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7609
                MCRepositoryBrowser openOnRepository:repos forPackage:eachSelectedItem label.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7610
            ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7611
                package := packageIdByItem at:eachSelectedItem ifAbsent:nil.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7612
                package notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7613
                    self loadPackageAndUpdate:package browse:doBrowse subPackages:false item:eachSelectedItem
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7614
                ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7615
            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7616
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7617
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7618
!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7619
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7620
loadPackageAndUpdate:package browse:doBrowse subPackages:subPackages item:someItem
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7621
    |defClass updateAction|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7622
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7623
    self withWaitCursorDo:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7624
        updateAction := 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7625
            [:whatChanged :parameter | 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7626
                self updateAction:whatChanged parameter:parameter
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7627
            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7628
            
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7629
        Smalltalk onChangeSend:#value:value: to:updateAction.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7630
        [
16687
fc818b969fed #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 16506
diff changeset
  7631
            |packageTried|
fc818b969fed #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 16506
diff changeset
  7632
            packageTried := package.
fc818b969fed #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 16506
diff changeset
  7633
            ((package includes:$:) not and:[(package includes:$/) not]) ifTrue:[
fc818b969fed #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 16506
diff changeset
  7634
                packageTried := package,':'
fc818b969fed #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 16506
diff changeset
  7635
            ].        
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7636
            [
16687
fc818b969fed #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 16506
diff changeset
  7637
                Smalltalk loadPackage:packageTried
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7638
            ] on:PackageLoadError do:[:ex |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7639
                |path|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7640
16111
335aa560bb05 #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 16107
diff changeset
  7641
                path := pathByItem at:someItem ifAbsent:nil.
335aa560bb05 #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 16107
diff changeset
  7642
                path isNil ifTrue:[
335aa560bb05 #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 16107
diff changeset
  7643
                    (Dialog information:'package ID inconsistency - cannot load...').
335aa560bb05 #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 16107
diff changeset
  7644
                ] ifFalse:[    
335aa560bb05 #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 16107
diff changeset
  7645
                    "/ try to load the file as is (i.e. not via package-id
335aa560bb05 #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 16107
diff changeset
  7646
                    (Dialog information:'package ID inconsistency - loading file directly...').
335aa560bb05 #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 16107
diff changeset
  7647
                    Smalltalk fileIn:(packageDirPath asFilename / path).
335aa560bb05 #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 16107
diff changeset
  7648
                ].
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7649
            ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7650
        ] ensure:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7651
            Smalltalk retractInterestsFor:updateAction.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7652
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7653
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7654
    ((defClass := package asPackageId projectDefinitionClass) notNil
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7655
        and:[ defClass isLoaded
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7656
        and:[ defClass isFullyLoaded ]])
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7657
    ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7658
        defClass isNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7659
            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
  7660
        ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7661
            defClass verbose:true.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7662
            defClass isLoaded.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7663
            defClass isFullyLoaded.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7664
            defClass verbose:false.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7665
            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
  7666
        ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7667
    ] ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7668
        doBrowse ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7669
            Tools::NewSystemBrowser openOnPackage:package
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7670
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7671
        someItem icon == packageIcon ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7672
            someItem icon:greyPackageIcon.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7673
            someItem label:(someItem label , alreadyLoadedString).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7674
        ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7675
            someItem icon == applicationIcon ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7676
                someItem icon:greyApplicationIcon.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7677
                someItem label:(someItem label , alreadyLoadedString).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7678
            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7679
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7680
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7681
    
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7682
    subPackages ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7683
        someItem children do:[:eachChild |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7684
            |subPackageID|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7685
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7686
            subPackageID := packageIdByItem at:eachChild.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7687
            self loadPackageAndUpdate:subPackageID browse:false subPackages:true item:eachChild.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7688
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7689
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7690
!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7691
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7692
readOtherPackageTrees
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7693
    |packagePath|
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7694
    
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7695
    packagePath := Smalltalk packagePath.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7696
    packagePath do:[:eachDirName |
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7697
        |folderRoot eachDir|
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7698
        
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7699
        eachDir := eachDirName asFilename.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7700
        selectedPackageHolder value isNil ifTrue:[
16379
1f61b71af8a2 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16341
diff changeset
  7701
            infoTextHolder value:(resources string:'searching %1...' with:eachDirName).
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7702
        ].    
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7703
        eachDir
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7704
            recursiveDirectoryContentsWithPrefix:'' 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7705
            filesDo:nil 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7706
            directoriesDo:[:subDir |
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7707
                |dfnBasename expectedDfnFilename|
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7708
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7709
                (eachDir /  subDir / 'abbrev.stc') exists ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7710
                    "/ see if there is a project definition file in this dir
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7711
                    dfnBasename := subDir copyReplaceAll:(Filename separator) with:$_.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7712
                    expectedDfnFilename := (eachDir /  subDir / dfnBasename) withSuffix:'st'.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7713
                    expectedDfnFilename exists ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7714
                        |path|
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7715
                        
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7716
                        path := subDir asFilename components.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7717
                        (itemsByPath at:( {root label},path) ifAbsent:nil) isNil ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7718
                            folderRoot isNil ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7719
                                folderRoot := myHierarchicalItemWithLabelAndIcon new.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7720
                                folderRoot icon:folderIcon.
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
  7721
                                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
  7722
                                folderRoot type:#compiledPackagesRoot.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7723
                            ].    
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7724
                            self 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7725
                                addItemWithPackagePath:path
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7726
                                target:nil
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7727
                                asApplication:false
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7728
                                toRoot:folderRoot.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7729
                        ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7730
                    ]
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7731
                ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7732
            ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7733
        folderRoot notNil ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7734
            masterRoot add:folderRoot.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7735
        ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7736
    ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7737
    selectedPackageHolder value isNil ifTrue:[
16379
1f61b71af8a2 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16341
diff changeset
  7738
        infoTextHolder value:(resources string:'Done searching other package folders.').
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7739
    ].    
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7740
    
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7741
"/    packageDirPath isNil ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7742
"/        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
  7743
"/    ] ifFalse:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7744
"/        packageDirPath asFilename directoryContentsAsFilenames sort do:[:fn |
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7745
"/            |item base nm path parentPath parent isLibrary isApplication isAlreadyLoaded 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7746
"/             defClass target packageID|
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7747
"/
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7748
"/            ((fn suffix = 'mcz') 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7749
"/            or:[ fn isDirectory   
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7750
"/            or:[ (fn baseName startsWith:'.')   
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7751
"/            or:[ (fn baseName = 'README') ]]]) ifFalse:[    
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7752
"/                base := fn withoutSuffix baseName.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7753
"/                (base startsWith:'lib') ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7754
"/                    nm := (base copyFrom:4).
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7755
"/                    fn suffix notEmptyOrNil ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7756
"/                        isLibrary := true.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7757
"/                        isApplication := false.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7758
"/                    ] ifFalse:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7759
"/                        isLibrary := false.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7760
"/                        isApplication := true.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7761
"/                    ]
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7762
"/                ] ifFalse:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7763
"/                    nm := base.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7764
"/                    isLibrary := false.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7765
"/                    isApplication := true.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7766
"/                ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7767
"/
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7768
"/                path := nm asCollectionOfSubstringsSeparatedBy:$_.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7769
"/                "/ see if already loaded
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7770
"/
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7771
"/                packageID := (path size > 1) 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7772
"/                                ifTrue:[ path first , ':' , ((path copyFrom:2) asStringWith:$/) ]
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7773
"/                                ifFalse:[ path first ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7774
"/
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7775
"/                item := self getItemByPath:path packageID:packageID.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7776
"/
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7777
"/                isAlreadyLoaded := false.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7778
"/                Error handle:[:ex |
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7779
"/                    item label:(item label , (' ERROR - please rebuild!!' colorizeAllWith:Color red)).
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7780
"/                ] do:[    
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7781
"/                    isAlreadyLoaded := 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7782
"/                        (defClass := ProjectDefinition definitionClassForPackage:packageID) notNil
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7783
"/                        and:[ defClass isLoaded
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7784
"/                        and:[ defClass isFullyLoaded ]].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7785
"/                ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7786
"/
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7787
"/                target := fn contents first.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7788
"/                ((target startsWith:'lib ') or:[(target startsWith:'app ')]) ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7789
"/                    pathByItem at:item put:(target copyFrom:(target indexOfSeparator + 1)) withoutSeparators.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7790
"/                ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7791
"/
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7792
"/                "/ 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
  7793
"/                (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
  7794
"/                    isAlreadyLoaded ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7795
"/                        item icon:(isApplication ifTrue:[greyApplicationIcon] ifFalse:[greyPackageIcon]). 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7796
"/                        item label:(item label , alreadyLoadedString)
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7797
"/                    ] ifFalse:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7798
"/                        item icon:(isApplication ifTrue:[applicationIcon] ifFalse:[packageIcon]). 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7799
"/                    ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7800
"/                ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7801
"/
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7802
"/                "/ if it is not already loaded, make all parents non-grey
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7803
"/                isAlreadyLoaded ifFalse:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7804
"/                    path size-1 to:1 by:-1 do:[:n |
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7805
"/                        |parentPath parentItem|
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7806
"/
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7807
"/                        parentPath := path copyTo:n.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7808
"/                        parentItem := self getItemByPath:parentPath packageID:packageID.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7809
"/                        parentItem icon == greyFolderIcon ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7810
"/                            parentItem icon:folderIcon.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7811
"/"/                        ] ifFalse:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7812
"/"/                            parentItem icon == greyApplicationIcon ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7813
"/"/                                parentItem icon:applicationIcon.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7814
"/"/                            ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7815
"/                        ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7816
"/                    ]
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7817
"/                ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7818
"/            ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7819
"/        ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7820
"/    ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7821
!
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7822
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7823
readOtherPackageTreesInBackground
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7824
    backgroundPackageFindProcess := 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7825
        [
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7826
            [
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7827
                self readOtherPackageTrees.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7828
            ] ensure:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7829
                backgroundPackageFindProcess := nil.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7830
            ].    
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7831
        ] forkAt:(Processor userBackgroundPriority).    
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7832
!
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7833
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7834
readPackageTree
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7835
    packageDirPath := Smalltalk getSystemFileName:'packages'.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7836
    packageDirPath isNil ifTrue:[
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
  7837
        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
  7838
    ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7839
        packageDirPath asFilename directoryContentsAsFilenames sort do:[:fn |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7840
            |item base nm path parentPath parent isLibrary isApplication isAlreadyLoaded 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7841
             defClass target packageID|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7842
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7843
            ((fn suffix = 'mcz') 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7844
            or:[ fn isDirectory   
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7845
            or:[ (fn baseName startsWith:'.')   
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7846
            or:[ (fn baseName = 'README') ]]]) ifFalse:[    
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7847
                base := fn withoutSuffix baseName.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7848
                (base startsWith:'lib') ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7849
                    nm := (base copyFrom:4).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7850
                    fn suffix notEmptyOrNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7851
                        isLibrary := true.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7852
                        isApplication := false.
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
                        isLibrary := false.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7855
                        isApplication := true.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7856
                    ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7857
                ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7858
                    nm := base.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7859
                    isLibrary := false.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7860
                    isApplication := true.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7861
                ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7862
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7863
                path := nm asCollectionOfSubstringsSeparatedBy:$_.
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7864
                target := fn contents first.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7865
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7866
                self 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7867
                    addItemWithPackagePath:path 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7868
                    target:target 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7869
                    asApplication:isApplication 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7870
                    toRoot:root.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7871
false ifTrue:[
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7872
                "/ see if already loaded
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7873
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7874
                packageID := (path size > 1) 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7875
                                ifTrue:[ path first , ':' , ((path copyFrom:2) asStringWith:$/) ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7876
                                ifFalse:[ path first ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7877
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7878
                item := self getItemByPath:path packageID:packageID.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7879
16225
ce1e52b48698 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16209
diff changeset
  7880
                isAlreadyLoaded := false.
ce1e52b48698 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16209
diff changeset
  7881
                Error handle:[:ex |
16506
f8e9cf3bc8a7 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16446
diff changeset
  7882
                    item label:(item label , (' ERROR - please rebuild!!' withColor:Color red)).
16225
ce1e52b48698 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16209
diff changeset
  7883
                ] do:[    
ce1e52b48698 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16209
diff changeset
  7884
                    isAlreadyLoaded := 
ce1e52b48698 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16209
diff changeset
  7885
                        (defClass := ProjectDefinition definitionClassForPackage:packageID) notNil
ce1e52b48698 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16209
diff changeset
  7886
                        and:[ defClass isLoaded
ce1e52b48698 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16209
diff changeset
  7887
                        and:[ defClass isFullyLoaded ]].
ce1e52b48698 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16209
diff changeset
  7888
                ].
ce1e52b48698 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16209
diff changeset
  7889
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7890
                ((target startsWith:'lib ') or:[(target startsWith:'app ')]) ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7891
                    pathByItem at:item put:(target copyFrom:(target indexOfSeparator + 1)) withoutSeparators.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7892
                ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7893
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7894
                "/ 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
  7895
                (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
  7896
                    isAlreadyLoaded ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7897
                        item icon:(isApplication ifTrue:[greyApplicationIcon] ifFalse:[greyPackageIcon]). 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7898
                        item label:(item label , alreadyLoadedString)
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7899
                    ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7900
                        item icon:(isApplication ifTrue:[applicationIcon] ifFalse:[packageIcon]). 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7901
                    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7902
                ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7903
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7904
                "/ if it is not already loaded, make all parents non-grey
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7905
                isAlreadyLoaded ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7906
                    path size-1 to:1 by:-1 do:[:n |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7907
                        |parentPath parentItem|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7908
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7909
                        parentPath := path copyTo:n.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7910
                        parentItem := self getItemByPath:parentPath packageID:packageID.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7911
                        parentItem icon == greyFolderIcon ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7912
                            parentItem icon:folderIcon.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7913
"/                        ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7914
"/                            parentItem icon == greyApplicationIcon ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7915
"/                                parentItem icon:applicationIcon.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7916
"/                            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7917
                        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7918
                    ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7919
                ].
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7920
].
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7921
            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7922
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7923
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7924
!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7925
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7926
selectionChangeAction:selectionIndices
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7927
    |selectedItem p itemType info|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7928
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7929
    loadButton enabled:(selectionIndices notEmpty).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7930
    loadAndBrowseButton enabled:(selectionIndices notEmpty).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7931
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7932
    selectionIndices size == 1 ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7933
        selectedItem := hierarchicalListView selectionValue first.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7934
        itemType := selectedItem type.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7935
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7936
        itemType == #monticelloRepository ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7937
            info := 'Monticello repository. Double click to browse its contents.'.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7938
        ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7939
            itemType == #monticelloPackage ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7940
                info := 'Monticello package. Double click to browse its contents.'.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7941
            ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7942
                p := packageIdByItem at:selectedItem ifAbsent:nil.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7943
                p notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7944
                    selectedPackageHolder value:(resources string:'Selected Package: "%1"' with:p allBold).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7945
                    self showPackageInfoAction:p.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7946
                ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7947
                    selectedItem == masterRoot ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7948
                        info := 'Packages found on the local machine.'
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7949
                    ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7950
                        selectedItem == monticelloRoot ifTrue:[
16379
1f61b71af8a2 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16341
diff changeset
  7951
                            info := 'Monticello packages\found on the local machine.'
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7952
                        ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7953
                            selectedItem == root ifTrue:[
16379
1f61b71af8a2 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16341
diff changeset
  7954
                                info := 'Class library packages\found in the "packages" folder.'
1f61b71af8a2 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16341
diff changeset
  7955
                            ] ifFalse:[
1f61b71af8a2 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16341
diff changeset
  7956
                                info := 'Other packages\found along the package-path.'
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7957
                            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7958
                        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7959
                    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7960
                ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7961
            ].
16379
1f61b71af8a2 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16341
diff changeset
  7962
            info notNil ifTrue:[ infoTextHolder value:(resources stringWithCRs:info)].
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7963
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7964
    ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7965
        selectedPackageHolder value:(resources string:'Selected %1 packages.' with:selectionIndices size).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7966
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7967
!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7968
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7969
showPackageInfoAction:package
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7970
    |projectDef comment info dir className fileName docChange|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7971
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7972
    info := resources string:'Sorry, could not find any package documentation'.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7973
    projectDef := package asPackageId projectDefinitionClass.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7974
    projectDef notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7975
        comment := projectDef commentOrDocumentationString.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7976
        comment isNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7977
            info := info, 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7978
                    (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
  7979
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7980
    ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7981
        "/ try to find the package's source
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7982
        dir := Smalltalk packageDirectoryForPackageId:package.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7983
        dir notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7984
            "/ is there a project definition class's source?
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7985
            className := ProjectDefinition projectDefinitionClassNameForDefinitionOf:package.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7986
            fileName := dir / ((Smalltalk fileNameForClass:className),'.st').
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7987
            fileName exists ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7988
                fileName readingFileDo:[:s |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7989
                    ChangeSet 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7990
                        fromStream:s 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7991
                        while:[:change |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7992
                            (change isMethodCodeChange
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7993
                            and:[ change selector == #documentation
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7994
                            and:[ change isForMeta ]]) ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7995
                                docChange := change.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7996
                                false "/ stop reading
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7997
                            ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7998
                                true
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7999
                            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8000
                        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8001
                ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8002
                docChange notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8003
                    comment := Parser methodCommentFromSource:docChange source.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8004
                ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8005
                    info := info ,
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8006
                            (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
  8007
                                    with:className
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8008
                                    with:fileName pathName).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8009
                ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8010
            ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8011
                info := info , 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8012
                        (resources stringWithCRs:'\\No definition class was found in the project.\In folder: %1'
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8013
                                with:dir pathName).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8014
            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8015
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8016
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8017
    comment notEmptyOrNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8018
        comment := comment asStringCollection.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8019
        [ comment size > 0 and:[comment first isEmpty]] whileTrue:[ comment removeFirst ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8020
        (comment conform:[:line | line isEmpty or:[line startsWith:'    ']]) ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8021
            comment := comment collect:[:line | 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8022
                        (line startsWith:'    ') ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8023
                            line copyFrom:5
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8024
                        ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8025
                            line
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8026
                        ]].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8027
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8028
        info := comment asString.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8029
    ] ifFalse:[ 
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
  8030
        info := info withColor:Color red.
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8031
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8032
    infoTextHolder value:info.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8033
!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8034
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8035
updateAction:whatChanged parameter:parameter
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8036
    |item isLoaded packageID|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8037
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8038
    "/ update the corresponding tree item
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8039
    (whatChanged == #postPackageLoad or:[whatChanged == #postLoad]) ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8040
        parameter notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8041
            packageID := parameter asSymbol.
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8042
            item := self getItemByPath:(packageID splitByAny:':/') packageID:packageID under:root.
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8043
            item notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8044
                isLoaded := (ProjectDefinition definitionClassForPackage:packageID) notNil.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8045
                isLoaded ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8046
                    (item icon == applicationIcon or:[item icon == packageIcon]) ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8047
                        item icon:((item icon == applicationIcon) ifTrue:[greyApplicationIcon] ifFalse:[greyPackageIcon]). 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8048
                        item label:(item label , alreadyLoadedString)
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8049
                    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8050
                ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8051
            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8052
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8053
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8054
! !
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8055
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  8056
!AbstractLauncherApplication class methodsFor:'documentation'!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  8057
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  8058
version
15699
292b370e5431 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15506
diff changeset
  8059
    ^ '$Header$'
10907
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  8060
!
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  8061
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  8062
version_CVS
15699
292b370e5431 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15506
diff changeset
  8063
    ^ '$Header$'
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  8064
!
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  8065
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  8066
version_SVN
15699
292b370e5431 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15506
diff changeset
  8067
    ^ '$Id$'
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  8068
! !
12499
3f6769e6733c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12067
diff changeset
  8069