AbstractLauncherApplication.st
author Merge Script
Fri, 22 Jul 2016 07:11:22 +0200
branchjv
changeset 16753 d0e2c8fd4a62
parent 16748 62486fba2d74
parent 16749 c1192209d968
child 16757 f2b7e4d96eb3
permissions -rw-r--r--
Merge
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2195
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
     1
"
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
     2
 COPYRIGHT (c) 1997 by eXept Software AG
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
     3
              All Rights Reserved
2195
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
     4
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
     5
 This software is furnished under a license and may be used
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
     6
 only in accordance with the terms of that license and with the
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
     7
 inclusion of the above copyright notice. This software may not
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
     8
 be provided or otherwise made available to, or used by, any
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
     9
 other person. No title to or ownership of the software is
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    10
 hereby transferred.
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    11
"
2689
602cbcd0feb3 Fix comment on oldSpace compress limit
Stefan Vogel <sv@exept.de>
parents: 2621
diff changeset
    12
"{ Package: 'stx:libtool' }"
602cbcd0feb3 Fix comment on oldSpace compress limit
Stefan Vogel <sv@exept.de>
parents: 2621
diff changeset
    13
15236
92e7ef5d694e class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14943
diff changeset
    14
"{ NameSpace: Smalltalk }"
92e7ef5d694e class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14943
diff changeset
    15
7455
9003f35c3458 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7439
diff changeset
    16
ToolApplicationModel subclass:#AbstractLauncherApplication
10907
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
    17
	instanceVariableNames:'transcript'
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
    18
	classVariableNames:'NotifyingEmergencyHandler OpenLaunchers RegisteredMenuHandlers
13882
212877cb97bf merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13761
diff changeset
    19
		OpenSettingsDialog SettingsList UserSettingsList
212877cb97bf merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13761
diff changeset
    20
		LastSettingsPageName'
10907
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
    21
	poolDictionaries:''
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
    22
	category:'Interface-Smalltalk'
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    23
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    24
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
Object subclass:#LauncherDialogs
10907
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
    26
	instanceVariableNames:''
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
    27
	classVariableNames:''
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
    28
	poolDictionaries:''
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
    29
	privateIn:AbstractLauncherApplication
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    31
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    32
ApplicationModel subclass:#PackageLoadDialog
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    33
	instanceVariableNames:'hierarchicalListView packageIdByItem pathByItem packageDirPath
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    34
		packageIcon greyPackageIcon folderIcon greyFolderIcon
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    35
		alreadyLoadedString applicationIcon greyApplicationIcon root
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    36
		itemsByPath getItemByPath myHierarchicalItemWithLabelAndIcon
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    37
		filterHolder masterRoot infoTextHolder loadButton
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
    38
		loadAndBrowseButton selectedPackageHolder monticelloRoot
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
    39
		backgroundPackageFindProcess'
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    40
	classVariableNames:'PreviousPackageDialogItems PreviousPackageDialogExtent'
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    41
	poolDictionaries:''
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    42
	privateIn:AbstractLauncherApplication
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    43
!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    44
2195
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    45
!AbstractLauncherApplication class methodsFor:'documentation'!
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    46
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    47
copyright
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 (c) 1997 by eXept Software AG
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
    50
              All Rights Reserved
2195
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    51
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    52
 This software is furnished under a license and may be used
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    53
 only in accordance with the terms of that license and with the
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    54
 inclusion of the above copyright notice. This software may not
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    55
 be provided or otherwise made available to, or used by, any
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    56
 other person. No title to or ownership of the software is
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    57
 hereby transferred.
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    58
"
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    59
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
documentation
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
    This is an abstract class, providing mechanisms and common functionality
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    65
    for launcher-type applications. Subclasses may implement their GUI either
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    66
    with or without the UIPainter framework, and still use the common functions
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    67
    provided here.
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    68
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    69
    [author:]
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
    70
        Claus Gittinger, eXept Software AG
2195
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    71
"
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    72
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
! !
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    75
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    76
!AbstractLauncherApplication class methodsFor:'accessing'!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    77
2761
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    78
closeAllLaunchers
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    79
    "close all opened launchers"
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    80
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    81
    self openLaunchers copy do:[:eachLauncher |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
    82
        eachLauncher closeRequest
2761
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    83
    ].
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    84
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
     self closeAllLaunchers.
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    87
     NewLauncher open
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    88
    "
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    89
!
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    90
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    91
current
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    92
    "return the launcher running on the current screen.
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    93
     (for access via addMenu/ removeMenu)"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    94
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    95
    |currentScreen|
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    96
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    97
    OpenLaunchers size > 0 ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
    98
        currentScreen := Screen current.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
    99
        ^ OpenLaunchers detect:[:eachLauncher | eachLauncher graphicsDevice == currentScreen] ifNone:nil
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   100
    ].
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   101
    ^ nil.
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   102
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   103
    "
2761
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
   104
     NewLauncher current
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   105
    "
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   106
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   107
    "Modified: / 9.9.1996 / 22:41:36 / stefan"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   108
    "Modified: / 13.10.1998 / 16:09:50 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   109
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   110
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   111
openLaunchers
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   112
    "return all opened launchers"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   113
3079
9e8b81438edb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3078
diff changeset
   114
    OpenLaunchers isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   115
        OpenLaunchers := IdentitySet new
3079
9e8b81438edb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3078
diff changeset
   116
    ].
9e8b81438edb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3078
diff changeset
   117
    ^ OpenLaunchers
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   118
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   119
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   120
!AbstractLauncherApplication class methodsFor:'defaults'!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   121
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   122
notifyingEmergencyHandler
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   123
    "return a block (used as an emergency handler
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   124
     for exceptions), which does errorNotification before going
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   125
     into the debugger."
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   126
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   127
    "Remember the handlerBlock, to be able to determine if the current
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   128
     handler is the notifying one."
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   129
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   130
    NotifyingEmergencyHandler isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   131
        NotifyingEmergencyHandler := NoHandlerError notifyingEmergencyHandler
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   132
    ].
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   133
    ^ NotifyingEmergencyHandler
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   134
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   135
    "Created: 7.1.1997 / 22:18:19 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   136
    "Modified: 15.1.1997 / 21:15:38 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   137
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   138
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   139
!AbstractLauncherApplication class methodsFor:'image specs'!
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   140
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   141
communicationIcon
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   142
    "This resource specification was automatically generated
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   143
     by the ImageEditor of ST/X."
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   144
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   145
    "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
   146
     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
   147
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   148
    "
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   149
     self communicationIcon inspect
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   150
     ImageEditor openOnClass:self andSelector:#communicationIcon
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   151
     Icon flushCachedIcons
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   152
    "
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   153
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   154
    <resource: #image>
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
    ^Icon
15763
87b7752ddde1 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15700
diff changeset
   157
        constantNamed:'AbstractLauncherApplication communicationIcon'
87b7752ddde1 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15700
diff changeset
   158
        ifAbsentPut:[(Depth4Image width:22 height:22) bits:(ByteArray fromPackedString:'
87b7752ddde1 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15700
diff changeset
   159
@@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
   160
;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
   161
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
   162
!
9e11f7a0936e change the settingsApplication list
penk
parents: 4385
diff changeset
   163
9805
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   164
cross2Icon
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   165
    "This resource specification was automatically generated
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   166
     by the ImageEditor of ST/X."
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   167
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   168
    "Do not manually edit this!! If it is corrupted,
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   169
     the ImageEditor may not be able to read the specification."
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   170
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   171
    "
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   172
     self cross2Icon inspect
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   173
     ImageEditor openOnClass:self andSelector:#cross2Icon
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   174
     Icon flushCachedIcons
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   175
    "
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   176
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   177
    <resource: #image>
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
    ^Icon
15763
87b7752ddde1 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15700
diff changeset
   180
        constantNamed:'AbstractLauncherApplication cross2Icon'
87b7752ddde1 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15700
diff changeset
   181
        ifAbsentPut:[(Depth1Image width:32 height:32) bits:(ByteArray fromPackedString:'
9806
80452f6ab4f6 changed: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9805
diff changeset
   182
@@@@@@@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
   183
@ @@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
   184
@@_@@@@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
   185
 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
   186
!
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   187
4893
39dec723f6ad *** empty log message ***
penk
parents: 4879
diff changeset
   188
httpServerIcon
6346
3b3d962e691c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6264
diff changeset
   189
    <resource: #programImage>
3b3d962e691c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6264
diff changeset
   190
3b3d962e691c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6264
diff changeset
   191
    ^ AbstractSettingsApplication::HTTPStartServerSettingsApplication defaultIcon
4893
39dec723f6ad *** empty log message ***
penk
parents: 4879
diff changeset
   192
!
39dec723f6ad *** empty log message ***
penk
parents: 4879
diff changeset
   193
39dec723f6ad *** empty log message ***
penk
parents: 4879
diff changeset
   194
systemBrowser24x24Icon
6346
3b3d962e691c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6264
diff changeset
   195
    <resource: #programImage>
3b3d962e691c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6264
diff changeset
   196
4893
39dec723f6ad *** empty log message ***
penk
parents: 4879
diff changeset
   197
    ^ ToolbarIconLibrary systemBrowser24x24Icon
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   198
! !
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   199
2195
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   200
!AbstractLauncherApplication class methodsFor:'queries'!
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   201
15946
ead61a2c0869 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 15925
diff changeset
   202
isAbstract
ead61a2c0869 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 15925
diff changeset
   203
    ^ self == AbstractLauncherApplication
2195
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   204
! !
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   205
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   206
!AbstractLauncherApplication class methodsFor:'settings application list'!
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   207
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   208
addSettingsApplicationByClass:aClass withName:aName icon:anIcon
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   209
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   210
    | userSetList addItem|
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   211
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   212
    userSetList := self userSettingsList.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   213
    addItem := Array with:aName with:aClass with:anIcon.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   214
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   215
    "Ignore existing entries found in SettingsList for that name"
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   216
    (SettingsList ? #()) do:[:entry |
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   217
        entry first = aName ifTrue: [
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   218
            ('Settings named "%1" already exists in "%2" with settings app class "%3"' 
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   219
                bindWith:aName
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   220
                    with:self name printString
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   221
                    with:entry second
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   222
            ) infoPrintCR.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   223
            ^ self
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   224
        ].    
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   225
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   226
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   227
    "/ remove existing entries in UserSettingsList for that name
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   228
    userSetList copy do:[:entry |
4704
a2ec1833538e *** empty log message ***
penk
parents: 4641
diff changeset
   229
        entry first = aName ifTrue:[
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   230
            userSetList remove:entry.
4704
a2ec1833538e *** empty log message ***
penk
parents: 4641
diff changeset
   231
        ]
a2ec1833538e *** empty log message ***
penk
parents: 4641
diff changeset
   232
    ].
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   233
    userSetList add:addItem.
4436
858e6ff50df1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 4429
diff changeset
   234
    OpenSettingsDialog notNil ifTrue:[
4893
39dec723f6ad *** empty log message ***
penk
parents: 4879
diff changeset
   235
        OpenSettingsDialog installSettingsEntry:addItem
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   236
    ].
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   237
!
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   238
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   239
allSettingsList
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   240
    ^ self settingsList, self userSettingsList
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   241
!
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   242
5423
884569242087 defaultSettingsList moved from SettingsDialog to Launcher
Claus Gittinger <cg@exept.de>
parents: 5410
diff changeset
   243
defaultSettingsApplicationList
8622
0c50929cb6ec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8612
diff changeset
   244
    "/ 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
   245
    "/ left here for backw. compatibility.
9137
d252e24bd64b window settings splitted; lower window settings added
Claus Gittinger <cg@exept.de>
parents: 9084
diff changeset
   246
8622
0c50929cb6ec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8612
diff changeset
   247
    ^ SettingsDialog defaultSettingsApplicationList
5423
884569242087 defaultSettingsList moved from SettingsDialog to Launcher
Claus Gittinger <cg@exept.de>
parents: 5410
diff changeset
   248
!
884569242087 defaultSettingsList moved from SettingsDialog to Launcher
Claus Gittinger <cg@exept.de>
parents: 5410
diff changeset
   249
15352
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   250
expandSettingsList:rawList
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   251
    "this expands a raw settings list,
15355
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   252
     by looking for entries with a block in their class name.
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   253
     If any such is present, it is evaluated, returning
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   254
     a collection of actual entries to use. Then, also % entries in
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   255
     the name and icon are evaluated by sending corresponding messages
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   256
     to the collected classes.
15352
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   257
     This allows for easy dynamic construction of more complicated
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   258
     lists, for example to adapt to the set of loaded classes dynamically."
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   259
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   260
    "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
   261
     Smalltalk's dynamic features, it is probably better done differently
15355
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   262
     (letting the caller do this).
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   263
     The code here is harder to debug, and understand"
15352
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   264
    
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   265
    |cookedList settingsList|
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   266
9860
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   267
    cookedList := OrderedCollection new.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   268
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   269
    rawList do:[:eachEntry|
15355
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   270
        |treeName classNameOrBlock newEntry code classList name nameCode nameBlock nameList iconCode iconBlock|
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   271
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   272
        classNameOrBlock := eachEntry at:2 ifAbsent:nil.
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   273
        classNameOrBlock isBlock ifTrue:[
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   274
            classList := classNameOrBlock value select:[:clsOrNil | clsOrNil notNil].
9860
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   275
            name := eachEntry at:1.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   276
            self assert:(name includesString:'[').
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   277
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   278
            nameCode := name copyFrom:(name indexOf:$[)+1 to:(name indexOf:$])-1.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   279
            nameCode := '^ [:each | ' , (nameCode copyReplaceString:'%' withString:'each') ,']'.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   280
            nameBlock := Parser evaluate:nameCode.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   281
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   282
            nameList := classList collect:nameBlock.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   283
            nameList sortWith:classList.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   284
            nameList with:classList do:[:eachName :eachClass |
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   285
                |newEntry|
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   286
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   287
                newEntry := eachEntry copy.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   288
                newEntry at:1 put:(name copyTo:(name indexOf:$[)-1),eachName.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   289
                newEntry at:2 put:eachClass name.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   290
                cookedList add:newEntry.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   291
            ].
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   292
        ] ifFalse:[
15355
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   293
            (classNameOrBlock isNil "a directory entry"
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   294
            or:[ (Smalltalk at:classNameOrBlock) notNil "a valid entry"]) ifTrue:[
9860
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   295
                cookedList add:eachEntry.
14475
724159baf6af class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14459
diff changeset
   296
            ] ifFalse:[
15355
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   297
                classNameOrBlock notNil ifTrue:[
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   298
                    Transcript showCR:'Launcher: missing settings class: ',classNameOrBlock.
14475
724159baf6af class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14459
diff changeset
   299
                ].
9860
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   300
            ].
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   301
        ].
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
    settingsList := 
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   305
        cookedList collect:[:eachEntry |
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   306
            |iconCodeOrSelector iconCode iconBlock newEntry|
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   307
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   308
            iconCodeOrSelector := eachEntry at:3 ifAbsent:nil.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   309
            iconCodeOrSelector isNil ifTrue:[
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   310
                newEntry := eachEntry
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   311
            ] ifFalse:[
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   312
                newEntry := eachEntry copy.
16107
8e8e7dc3035d #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16096
diff changeset
   313
                (iconCodeOrSelector startsWith:$[) ifTrue:[
9860
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   314
                    iconCode := iconCodeOrSelector copyFrom:(iconCodeOrSelector indexOf:$[)+1 to:(iconCodeOrSelector indexOf:$])-1.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   315
                    iconCode := '^ [:each | ' , (iconCode copyReplaceString:'%' withString:'each') ,']'.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   316
                    iconBlock := Parser evaluate:iconCode.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   317
                    newEntry at:3 put:(iconBlock value:(Smalltalk classNamed:(eachEntry at:2))).
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   318
                ] ifFalse:[
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   319
                    newEntry at:3 put:(self perform:iconCodeOrSelector).
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   320
                ].
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   321
            ].
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   322
            newEntry.
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
9188
2ee7d25e44cc do NOT cache the settings list
Claus Gittinger <cg@exept.de>
parents: 9165
diff changeset
   325
    ^ settingsList.
8761
993414b0b0f1 keep settingsList in an instance class variable
fm
parents: 8680
diff changeset
   326
993414b0b0f1 keep settingsList in an instance class variable
fm
parents: 8680
diff changeset
   327
    "
9137
d252e24bd64b window settings splitted; lower window settings added
Claus Gittinger <cg@exept.de>
parents: 9084
diff changeset
   328
     self withAllSubclassesDo:[:cls | cls initializeSettingsList ]
8761
993414b0b0f1 keep settingsList in an instance class variable
fm
parents: 8680
diff changeset
   329
    "
15352
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   330
!
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   331
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   332
initializeSettingsList
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   333
    SettingsList := self expandSettingsList:(self defaultSettingsApplicationList).
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   334
    ^ SettingsList.
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   335
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   336
    "
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   337
     self withAllSubclassesDo:[:cls | cls initializeSettingsList ]
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   338
    "
8761
993414b0b0f1 keep settingsList in an instance class variable
fm
parents: 8680
diff changeset
   339
993414b0b0f1 keep settingsList in an instance class variable
fm
parents: 8680
diff changeset
   340
    "Modified: / 16-12-2002 / 18:12:50 / penk"
9875
062f2c80dff0 changed: #initializeSettingsList
Claus Gittinger <cg@exept.de>
parents: 9860
diff changeset
   341
    "Modified: / 20-04-2011 / 17:03:33 / cg"
8761
993414b0b0f1 keep settingsList in an instance class variable
fm
parents: 8680
diff changeset
   342
!
993414b0b0f1 keep settingsList in an instance class variable
fm
parents: 8680
diff changeset
   343
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   344
removeSettingsApplicationByClass:aClass
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   345
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   346
    | userSetList remItem|
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   347
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   348
    userSetList := self userSettingsList.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   349
    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
   350
    remItem notNil ifTrue:[
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   351
        userSetList remove:remItem.
4436
858e6ff50df1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 4429
diff changeset
   352
        OpenSettingsDialog notNil ifTrue:[
858e6ff50df1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 4429
diff changeset
   353
            self removeSettingsEntry:remItem forSettingsApp:OpenSettingsDialog.
4386
9e11f7a0936e change the settingsApplication list
penk
parents: 4385
diff changeset
   354
        ].
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   355
    ].
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   356
!
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
removeSettingsEntry:entry forSettingsApp:aSettingsApp
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
    |applName applClass|
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 := entry at:1.
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   363
    applClass := entry at:2.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   364
    aSettingsApp remApplClassByName:applName.
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   365
!
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   366
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   367
settingsList
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   368
    "/ do NOT cache SettingsList
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   369
    "/ use UserSettingsList to add settings from loaded libraries
9860
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   370
9188
2ee7d25e44cc do NOT cache the settings list
Claus Gittinger <cg@exept.de>
parents: 9165
diff changeset
   371
    SettingsList := nil.
2ee7d25e44cc do NOT cache the settings list
Claus Gittinger <cg@exept.de>
parents: 9165
diff changeset
   372
    SettingsList isNil ifTrue: [
2ee7d25e44cc do NOT cache the settings list
Claus Gittinger <cg@exept.de>
parents: 9165
diff changeset
   373
        SettingsList := self initializeSettingsList
2ee7d25e44cc do NOT cache the settings list
Claus Gittinger <cg@exept.de>
parents: 9165
diff changeset
   374
    ].
9137
d252e24bd64b window settings splitted; lower window settings added
Claus Gittinger <cg@exept.de>
parents: 9084
diff changeset
   375
    ^ SettingsList
9860
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   376
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   377
    "Modified: / 19-04-2011 / 12:08:17 / cg"
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   378
!
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   379
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   380
userSettingsList
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   381
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   382
    UserSettingsList isNil ifTrue: [
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   383
        UserSettingsList := OrderedCollection new.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   384
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   385
    ^ UserSettingsList
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   386
! !
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   387
14752
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   388
!AbstractLauncherApplication class methodsFor:'settings dialog'!
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   389
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   390
openSettings
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   391
    ^ self openSettingsFor: nil
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   392
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   393
    "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
   394
!
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   395
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   396
openSettingsAndSelect: selectedPageName
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   397
    ^ self openSettingsFor: nil andSelect: selectedPageName
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   398
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   399
    "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
   400
!
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   401
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   402
openSettingsFor: requestor
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   403
    ^ self openSettingsFor: requestor andSelect: LastSettingsPageName
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   404
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   405
    "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
   406
!
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   407
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   408
openSettingsFor: requestor andSelect: selectedPageName
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   409
    |settingsApp wg proc|
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   410
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   411
    OpenSettingsDialog notNil ifTrue:[
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   412
        (wg := OpenSettingsDialog windowGroup) notNil ifTrue:[
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   413
            (proc := wg process) notNil ifTrue:[
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   414
                proc isDead ifFalse:[
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   415
                    OpenSettingsDialog window raiseDeiconified.
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   416
                    ^ self.
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   417
                ]
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   418
            ]
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
        OpenSettingsDialog := nil.
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
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   423
    settingsApp := SettingsDialog new.
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   424
    settingsApp requestor:requestor.
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   425
    settingsApp installSettingsEntries:(self allSettingsList).
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   426
    "/ settingsApp requestor:self.
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   427
    OpenSettingsDialog := settingsApp.
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   428
    settingsApp allButOpen.
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   429
    settingsApp window label:(self classResources string:'ST/X Settings').
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   430
    settingsApp openWindow.
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   431
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   432
    selectedPageName notNil ifTrue:[
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   433
        settingsApp selectItemWithName:selectedPageName
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   434
    ].
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   435
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   436
    "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
   437
! !
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   438
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   439
!AbstractLauncherApplication class methodsFor:'utilities'!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   440
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   441
openLoadPackageDialog
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   442
    "open a dialog showing wellknown packages (listed in the packages directory)
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   443
     and offer to load the selected one(s).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   444
     TODO: make this a little app instead of an ad-hoc dialog, 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   445
     add remote packages (central goody repository?)"    
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   446
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   447
    PackageLoadDialog open
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   448
! !
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   449
8381
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   450
!AbstractLauncherApplication methodsFor:'drag & drop'!
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   451
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   452
canDropObjects:aCollectionOfDropObjects
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   453
    "Any object can be dropped into workspace..."
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   454
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   455
    ^ aCollectionOfDropObjects
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   456
        contains:[:someObject| (someObject isTextObject or:[ someObject isFileObject ])].
8381
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   457
!
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   458
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   459
dropFileObject:aFilename
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   460
    |suffix|
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   461
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   462
    suffix := aFilename asFilename suffix.
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   463
    suffix = 'st' ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   464
        ChangesBrowser openOn:aFilename.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   465
        ^ self.
8381
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   466
    ].
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   467
    UserPreferences fileBrowserClass openOn:aFilename.
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   468
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   469
!
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   470
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   471
dropObjects:aCollectionOfObjects
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   472
    "Any object can be dropped:
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   473
        text: open a workspace
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   474
        file:
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   475
            .st - open a cange-browser
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   476
            other - open a fileBrowser
8381
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   477
    "
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   478
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   479
    aCollectionOfObjects do:[:dropObject|
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   480
        |theObject|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   481
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   482
        theObject := dropObject theObject.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   483
        dropObject isTextObject ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   484
            self dropTextObject:theObject
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   485
        ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   486
            dropObject isFileObject ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   487
                self dropFileObject:theObject
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   488
            ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   489
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   490
        ].
8381
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   491
    ].
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   492
!
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   493
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   494
dropTextObject:aDropContext
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   495
    WorkspaceApplication openWith:aDropContext.
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   496
! !
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   497
11870
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   498
!AbstractLauncherApplication methodsFor:'menu actions - tools'!
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   499
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   500
clearAllCoverageInfo
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   501
    "clear all coverage information"
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   502
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   503
    self withWaitCursorDo:[
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   504
        InstrumentedMethod cleanAllInfoWithChange:false
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   505
    ].
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   506
    Smalltalk changed:#coverageInfo.
11990
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
   507
!
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
   508
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
   509
startSUnitTestRunner2
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
   510
    "open the SUnit test runner"
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
   511
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
   512
    self openApplication:#Tools::TestRunner2
11870
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   513
! !
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   514
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   515
!AbstractLauncherApplication methodsFor:'oldStyle-user actions-settings'!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   516
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   517
communicationsSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   518
    "open a dialog on misc other settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   519
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   520
    self settingsDialog:[:handler | handler communicationsSettings]
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
    "Modified: / 31.7.1998 / 22:46:56 / cg"
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
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   525
compilerSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   526
    "open a dialog on compiler related settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   527
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   528
    self settingsDialog:[:handler | handler compilerSettings]
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
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   531
displaySettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   532
    "open a dialog on display related settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   533
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   534
    self settingsDialog:[:handler | handler displaySettings]
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
    "Modified: / 31.7.1998 / 22:45:38 / cg"
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
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   539
editSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   540
    "open a dialog on edit settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   541
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   542
    self settingsDialog:[:handler | handler editSettings]
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
    "Modified: / 31.7.1998 / 22:46:56 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   545
    "Created: / 6.1.1999 / 14:14:48 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   546
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   547
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   548
fontSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   549
    "open a dialog on font related settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   550
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   551
    self settingsDialog:[:handler | handler fontSettingsFor:self]
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
    "Modified: / 31.7.1998 / 22:45:44 / cg"
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
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   556
javaSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   557
    "open a dialog on java-subsystem related settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   558
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   559
    self settingsDialog:[:handler | handler javaSettings]
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
    "Modified: / 31.7.1998 / 22:46:13 / cg"
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
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   564
keyboardSetting
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   565
    "open a dialog on keyboard related settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   566
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   567
    self settingsDialog:[:handler | handler keyboardSettings]
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
    "Modified: / 31.7.1998 / 22:45:56 / cg"
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
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   572
languageSetting
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   573
    "open a dialog on language related settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   574
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   575
    self settingsDialog:[:handler | handler languageSettingsFor:self]
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
    "Modified: / 31.7.1998 / 22:46:13 / cg"
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
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   580
loadSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   581
    "restore settings from a settings-file."
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   582
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   583
    "a temporary kludge - we need a central systemSettings object for this,
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   584
     which can be saved/restored with a single store/read."
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   585
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   586
    |fileName|
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   587
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   588
    fileName := Dialog
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   589
        requestFileName:(resources string:'Load Settings From:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   590
        default:'settings.stx'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   591
        ok:(resources string:'Load')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   592
        abort:(resources string:'Cancel')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   593
        pattern:'*.stx'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   594
        fromDirectory:nil.
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   595
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   596
    fileName isEmptyOrNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   597
        "/ canceled
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   598
        ^ self
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   599
    ].
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   600
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   601
    self withWaitCursorDo:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   602
        Smalltalk fileIn:fileName.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   603
        self reOpen
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   604
    ].
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   605
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   606
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   607
memorySettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   608
    "open a dialog on objectMemory related settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   609
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   610
    self settingsDialog:[:handler | handler memorySettings]
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
    "Modified: / 31.7.1998 / 22:46:33 / cg"
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
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   615
messageSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   616
    "open a dialog on infoMessage related settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   617
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   618
    self settingsDialog:[:handler | handler messageSettings]
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
    "Modified: / 31.7.1998 / 22:46:45 / cg"
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
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   623
miscSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   624
    "open a dialog on misc other settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   625
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   626
    self settingsDialog:[:handler | handler miscSettings]
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
    "Modified: / 31.7.1998 / 22:46:56 / cg"
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
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   631
printerSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   632
    "open a dialog on printer related settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   633
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   634
    self settingsDialog:[:handler | handler printerSettings]
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
    "Modified: / 31.7.1998 / 22:47:05 / cg"
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
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   639
saveSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   640
    "save settings to a settings-file."
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   641
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   642
    self settingsDialog:[:handler | handler saveSettings]
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
    "Modified: / 31.7.1998 / 22:48:38 / cg"
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
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   647
settingsDialog:symbolOrBlock
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   648
    |handler|
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   649
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   650
    RegisteredMenuHandlers notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   651
        handler := RegisteredMenuHandlers at:symbolOrBlock ifAbsent:nil.
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   652
    ].
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   653
    handler isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   654
        handler := LauncherDialogs
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   655
    ].
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   656
    symbolOrBlock isBlock ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   657
        symbolOrBlock value:handler
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   658
    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   659
        handler perform:symbolOrBlock with:self.
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   660
    ]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   661
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   662
    "Modified: / 24-02-2007 / 09:40:48 / cg"
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
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   665
sourceAndDebuggerSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   666
    "open a dialog on misc other settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   667
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   668
    self settingsDialog:[:handler | handler sourceAndDebuggerSettings]
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
    "Modified: / 31.7.1998 / 22:47:21 / cg"
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
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   673
toolSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   674
    "open a dialog on tool settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   675
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   676
    self settingsDialog:[:handler | handler toolSettings]
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
    "Modified: / 31.7.1998 / 22:46:56 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   679
    "Created: / 13.10.1998 / 15:50:53 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   680
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   681
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   682
viewStyleSetting
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   683
    "open a dialog on viewStyle related settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   684
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   685
    self settingsDialog:[:handler | handler viewStyleSettingsFor:self]
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
    "Modified: / 31.7.1998 / 22:47:33 / cg"
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
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   690
!AbstractLauncherApplication methodsFor:'private'!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   691
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   692
allTopViewsAndLabelsSortedFilteringWindowGroups: windowGroupFilterOrNil
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   693
    "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
   694
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   695
    |knownTopViewsAndLabels|
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 := OrderedCollection new.
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   698
    self allTopViewsFilteringWindowGroups: windowGroupFilterOrNil withLabelsDo: [:v :lbl |
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   699
        knownTopViewsAndLabels add:(lbl -> v)
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   700
    ].
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   701
    knownTopViewsAndLabels sort:[:a :b | a key < b key].
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   702
    ^ knownTopViewsAndLabels
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   703
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   704
    "Created: / 27-04-2012 / 13:04:21 / cg"
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
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   707
allTopViewsFilteringWindowGroups: windowGroupFilterOrNil withLabelsDo: aBlock
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   708
    "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
   709
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   710
    |knownTopViews genLabel|
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
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   713
    genLabel := [:v | 
12499
3f6769e6733c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12067
diff changeset
   714
                    |app appName busyOrNot iconifiedOrNot 
3f6769e6733c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12067
diff changeset
   715
                     sensor pending process|
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   716
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   717
                    app := v application.
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   718
                    appName := (app isNil 
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   719
                                    ifTrue:[''] 
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   720
                                    ifFalse:[app class nameWithoutPrefix,': ']).
11490
62451ecb3d3b changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11487
diff changeset
   721
                    busyOrNot := ''.
62451ecb3d3b changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11487
diff changeset
   722
                    (sensor := v windowGroup sensor) notNil ifTrue:[
62451ecb3d3b changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11487
diff changeset
   723
                        (pending := sensor pendingEvent) notNil ifTrue:[
14271
297ed164a7fc class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14238
diff changeset
   724
                            (Timestamp now secondDeltaFrom: pending timeStamp) > 1 ifTrue:[
11817
76227c9e12bc changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11813
diff changeset
   725
                                ((process := v windowGroup process) notNil and:[ process isDebugged]) ifTrue:[
76227c9e12bc changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11813
diff changeset
   726
                                    busyOrNot := ' [debug]'
76227c9e12bc changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11813
diff changeset
   727
                                ] ifFalse:[
76227c9e12bc changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11813
diff changeset
   728
                                    busyOrNot := ' [busy]'
76227c9e12bc changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11813
diff changeset
   729
                                ].
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
   730
                                busyOrNot := busyOrNot allBold withColor:Color red
11490
62451ecb3d3b changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11487
diff changeset
   731
                            ]
62451ecb3d3b changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11487
diff changeset
   732
                        ]
62451ecb3d3b changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11487
diff changeset
   733
                    ].
12499
3f6769e6733c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12067
diff changeset
   734
                    iconifiedOrNot := ''.
3f6769e6733c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12067
diff changeset
   735
                    v topView isCollapsed ifTrue:[
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
   736
                        iconifiedOrNot := ' (iconified)' withColor:Color blue.
12499
3f6769e6733c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12067
diff changeset
   737
                    ].
3f6769e6733c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12067
diff changeset
   738
                    appName,'"',(v label ? 'aView'),'"',busyOrNot,iconifiedOrNot
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   739
                ].
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   740
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   741
    knownTopViews := IdentitySet new.
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   742
    Screen allScreens do:[:aScreen |
16749
c1192209d968 #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 16747
diff changeset
   743
        aScreen allViewsDo:[:aView |
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   744
            |top showIt wg|
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   745
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   746
            aView notNil ifTrue:[
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   747
                top := aView topView.
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   748
                (knownTopViews includes:top) ifFalse:[
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   749
                    (top isKindOf:DebugView) ifTrue:[
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   750
                        "/ although modal, show it.
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   751
                        showIt := top realized
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   752
                    ] ifFalse:[
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   753
                        (top isKindOf:TopView) ifTrue:[
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   754
                            wg := top windowGroup.
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   755
                            showIt := (wg notNil and:[wg isModal not]).
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   756
                            showIt ifTrue:[
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   757
                                windowGroupFilterOrNil notNil ifTrue:[
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   758
                                    showIt := windowGroupFilterOrNil includes:wg
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   759
                                ]
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   760
                            ]
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   761
                        ] ifFalse:[
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   762
                            showIt := false
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   763
                        ].
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   764
                    ].
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   765
                    showIt ifTrue:[
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   766
                        aBlock value: top value:(genLabel value:top).
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   767
                        knownTopViews add: top.
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   768
                    ]
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   769
                ]
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
    "Created: / 27-04-2012 / 12:56:53 / cg"
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
2696
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   777
findApplicationClass:classOrClassName nameSpace:aNameSpace
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   778
    "find some application, given the classes name.
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   779
     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
   780
14381
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   781
    |findClass cls classNameSymbol|
2696
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   782
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   783
    classOrClassName isBehavior ifTrue:[
14381
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   784
        ^ classOrClassName.
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   785
    ].
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   786
    findClass :=
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
            (classNameSymbol := classOrClassName asSymbolIfInterned) notNil ifTrue:[
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   789
                cls := Smalltalk at:classNameSymbol.
14121
3c8e880471d9 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   790
                cls isNil ifTrue:[
14381
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   791
                    "/ look if its in the nameSpace
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   792
                    aNameSpace notNil ifTrue:[
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   793
                        cls := aNameSpace at:classNameSymbol
14121
3c8e880471d9 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   794
                    ].
11832
a2fee9d12c5d changed: #findApplicationClass:nameSpace:
Claus Gittinger <cg@exept.de>
parents: 11817
diff changeset
   795
                ].
a2fee9d12c5d changed: #findApplicationClass:nameSpace:
Claus Gittinger <cg@exept.de>
parents: 11817
diff changeset
   796
            ].
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   797
        ].
14381
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   798
    findClass value.
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   799
    cls isNil ifTrue:[
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   800
        (Dialog confirm:(resources
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   801
                    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
   802
                    with:classOrClassName allBold)) ifFalse:[
14445
93a87572e630 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14381
diff changeset
   803
            ^ AbortOperationRequest raise
14381
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   804
        ].
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   805
        self withWaitCursorDo:[
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   806
            #(
14694
31166504525d class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14683
diff changeset
   807
                'stx:doc/coding'
14381
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   808
                'stx:clients'
16096
4cc6835c7a20 #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 16076
diff changeset
   809
                'stx:goodies/demos'
14381
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   810
                'stx:libwidg3'
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   811
            ) do:[:pkg |
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   812
                Processor activeProcess withPriority:(Processor userSchedulingPriority) do:[
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   813
                    Smalltalk recursiveInstallAutoloadedClassesFrom:(Smalltalk projectDirectoryForPackage:pkg).
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   814
                ].
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   815
            ].
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
        findClass value.
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   818
        cls isNil ifTrue:[
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   819
            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
   820
            ^ nil
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   821
        ].
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   822
        "/ self halt.
2696
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   823
    ].
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   824
    ^ cls
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
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   827
findWindow:title
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   828
    "a helper for find & destroy and find & raise operations;
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   829
     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
   830
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   831
    ^ self findWindow:title windowGroupFilter:nil
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   832
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   833
!
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
findWindow:title windowGroupFilter:windowGroupFilterOrNil
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   836
    "a helper for find & destroy and find & raise operations;
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   837
     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
   838
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   839
    |knownTopViewsAndLabels nameList box|
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   840
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   841
    knownTopViewsAndLabels := OrderedCollection new.
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   842
    self allTopViewsFilteringWindowGroups: windowGroupFilterOrNil withLabelsDo: [:v :lbl |
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   843
        knownTopViewsAndLabels add:(lbl -> v)
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   844
    ].
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   845
    knownTopViewsAndLabels sort:[:a :b | a key < b key].
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
    nameList := knownTopViewsAndLabels collect:[:lblAndView |
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   848
                                        |v l isDead wg p|
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   849
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   850
                                        l := lblAndView key.
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   851
                                        v := lblAndView value.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   852
                                        v device == Display ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   853
                                            l := l , ' [' , (v device displayName ? '?') , ']'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   854
                                        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   855
                                        ((wg := v windowGroup) notNil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   856
                                        and:[(p := wg process) notNil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   857
                                        and:[p state ~~ #dead]]) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   858
                                            l
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   859
                                        ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   860
                                            l , ' (dead ?)'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   861
                                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   862
                                      ].
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   863
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   864
    box := ListSelectionBox new.
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   865
    box selectionChangeCallback:[:selectionIndex |   |v|
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   866
                                    v := (knownTopViewsAndLabels at:box selectionIndex) value.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   867
                                    v raise. box raise
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   868
                                ].
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   869
    box noEnterField.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   870
    box list:nameList.
4412
710b2097c588 dialog strings
Claus Gittinger <cg@exept.de>
parents: 4399
diff changeset
   871
    box label:(resources string:'View Selection').
6352
1dfde810826f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6346
diff changeset
   872
    box title:(resources stringWithCRs:title).
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   873
    box action:[:selection |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   874
        |v|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   875
16747
7e55266044ea #BUGFIX by stefan
Stefan Vogel <sv@exept.de>
parents: 16687
diff changeset
   876
        box selectionIndex isNil ifTrue:[
7e55266044ea #BUGFIX by stefan
Stefan Vogel <sv@exept.de>
parents: 16687
diff changeset
   877
            ^ nil.
7e55266044ea #BUGFIX by stefan
Stefan Vogel <sv@exept.de>
parents: 16687
diff changeset
   878
        ].
7e55266044ea #BUGFIX by stefan
Stefan Vogel <sv@exept.de>
parents: 16687
diff changeset
   879
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   880
        v := (knownTopViewsAndLabels at:box selectionIndex) value.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   881
        box destroy.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   882
        ^ v
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   883
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   884
    box extent:400@300.
3293
d7b925f89a7b dont use explicit showAtPointer
Claus Gittinger <cg@exept.de>
parents: 3288
diff changeset
   885
    box open.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   886
    ^ nil
11354
cdab1a0846a2 changed: #findWindow:windowGroupFilter:
Claus Gittinger <cg@exept.de>
parents: 11270
diff changeset
   887
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   888
    "Modified: / 27-04-2012 / 12:59:37 / cg"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   889
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   890
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
   891
openApplication: classOrClassName
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   892
     "open an application, given by the classe name."
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   893
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
   894
    self openApplication:classOrClassName nameSpace:nil
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   895
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   896
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
   897
openApplication:classOrClassName nameSpace:aNameSpace
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   898
    "open some application, given the classes name.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   899
     Look for it in Smalltalk and the given nameSpace"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   900
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
   901
    self openApplication:classOrClassName nameSpace:aNameSpace with:#open
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   902
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   903
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
   904
openApplication:classOrClassName nameSpace:aNameSpace with:aSelector
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   905
    "open some application, given the classes name.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   906
     Look for it in Smalltalk and the given nameSpace"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   907
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   908
    |cls|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   909
2696
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   910
    cls := self findApplicationClass:classOrClassName nameSpace:aNameSpace.
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   911
    cls isNil ifTrue:[
14296
59c1a4f442e4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14271
diff changeset
   912
        Dialog information:'Could not find class: '
59c1a4f442e4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14271
diff changeset
   913
                            ,(classOrClassName isBehavior
59c1a4f442e4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14271
diff changeset
   914
                                ifTrue:[classOrClassName name]
59c1a4f442e4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14271
diff changeset
   915
                                ifFalse:[classOrClassName]).
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   916
        ^ self
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   917
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   918
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
   919
    Autoload autoloadFailedSignal handle:[:ex |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   920
        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
   921
    ] do:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   922
        self withWaitCursorDo:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   923
            cls perform:aSelector
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   924
        ]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   925
    ]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   926
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   927
7882
1f5e30497c9a changed #openFileBrowser
Claus Gittinger <cg@exept.de>
parents: 7871
diff changeset
   928
openFileBrowser
1f5e30497c9a changed #openFileBrowser
Claus Gittinger <cg@exept.de>
parents: 7871
diff changeset
   929
     "open a fileBrowser"
1f5e30497c9a changed #openFileBrowser
Claus Gittinger <cg@exept.de>
parents: 7871
diff changeset
   930
14183
ec5f8f775000 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 14123
diff changeset
   931
    self openApplication:UserPreferences fileBrowserClass nameSpace:nil
7882
1f5e30497c9a changed #openFileBrowser
Claus Gittinger <cg@exept.de>
parents: 7871
diff changeset
   932
1f5e30497c9a changed #openFileBrowser
Claus Gittinger <cg@exept.de>
parents: 7871
diff changeset
   933
    "Created: / 05-11-2007 / 11:16:17 / cg"
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
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   936
pickAView
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   937
    "let user pick a view and return it"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   938
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   939
    |v|
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
    (Delay forSeconds:1) wait.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   942
    v := Screen current viewFromUser.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   943
    v isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   944
        self warn:'Sorry, this is not a smalltalk view'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   945
        ^ nil
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   946
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   947
    ^ v
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
!
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
saveScreenImage:anImage defaultName:defaultName
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   952
    "save an image into a file
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   953
     - ask user for filename using a fileSelectionBox."
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   954
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   955
    |fileName|
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 := Dialog
9609
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   958
                    requestFileName:(resources string:'Save hardcopy image in:')
9748
a5701b91134a changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9665
diff changeset
   959
                    default:(defaultName , '.png')
9609
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   960
                    ok:(resources string:'Save')
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   961
                    abort:(resources string:'Cancel')
9658
c1eb68ba27eb changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9609
diff changeset
   962
                    pattern:'*.png;*.tiff;*.bmp'
9609
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   963
                    fromDirectory:nil
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   964
                    forSave:true
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   965
                    whenBoxCreatedEvaluate:[:box |
13119
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   966
                        |editButton paintButton copyButton|
9609
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   967
                        "/ UserPreferences current useNewFileDialog ifFalse:[
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   968
                            editButton := Button label:(resources string:'Edit').
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   969
                            editButton
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   970
                                action:[
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   971
                                    box hide; destroy.
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   972
                                    ImageEditor openOnImage:anImage.
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   973
                                ].
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   974
                            box addButton:editButton.
13119
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   975
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   976
                            paintButton := Button label:(resources string:'OS Editor').
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   977
                            paintButton
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   978
                                action:[
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   979
                                    |tempStream|
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   980
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   981
                                    tempStream := FileStream newTemporaryWithSuffix:'png'.
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   982
                                    box hide; destroy.
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   983
                                    PNGReader save:anImage onStream:tempStream.
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   984
                                    tempStream close.
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   985
                                    OperatingSystem
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   986
                                        openApplicationForDocument:tempStream fileName operation:#edit mimeType:'image/png'.
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   987
                                ].
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   988
                            box addButton:paintButton.
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
                            copyButton := Button label:(resources string:'Copy to Clipboard').
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   991
                            copyButton
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   992
                                action:[
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   993
                                    self window setClipboardObject:anImage.
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   994
                                    box hide; destroy.
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   995
                                ].
988afe47fee1 class: AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 13087
diff changeset
   996
                            box addButton:copyButton.
9609
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   997
                        "/ ]
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
   998
                   ].
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   999
    fileName notNil ifTrue:[
9665
f98a52e6b1aa changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9659
diff changeset
  1000
        anImage saveOn:fileName.
f98a52e6b1aa changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9659
diff changeset
  1001
        ImageEditView lastSaveDirectory:fileName asFilename directory pathName.
9609
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
  1002
    ].
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
  1003
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
  1004
    "Created: / 29-01-1998 / 23:20:36 / cg"
9748
a5701b91134a changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9665
diff changeset
  1005
    "Modified: / 08-02-2011 / 21:51:11 / cg"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1006
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1007
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1008
showDocumentation:aRelativeDocFilePath
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1009
    "open an HTML browser on some document"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1010
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1011
    "
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1012
     although that one is not yet finished,
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1013
     its better than nothing ...
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1014
    "
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1015
    HTMLDocumentView notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1016
        self withWaitCursorDo:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1017
            "
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1018
             temporary kludge;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1019
             not all machines can autoload binaries;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1020
             however, on my SGI (which can) we want it
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1021
             to load automatically.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1022
            "
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1023
            HTMLDocumentView isLoaded ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1024
                Error catch:[HTMLDocumentView autoload]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1025
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1026
            HTMLDocumentView isLoaded ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1027
                HTMLDocumentView openFullOnDocumentationFile:aRelativeDocFilePath.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1028
                ^ self
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1029
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1030
        ]
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1031
    ].
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1032
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1033
    self warn:'Sorry, the ST/X HTML reader is not
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1034
included in this release.
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1035
7782
c6b2180cc789 changed #showDocumentation:
Stefan Vogel <sv@exept.de>
parents: 7726
diff changeset
  1036
Please use firefox, konqueror, internet explorer or any
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1037
other HTML viewer to see the documentation.
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1038
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1039
The documentation is found in the ''doc/online'' directory.'.
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1040
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1041
    "Modified: / 25.2.1998 / 21:24:20 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1042
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1043
4859
462e871755e0 method category rename
Claus Gittinger <cg@exept.de>
parents: 4854
diff changeset
  1044
!AbstractLauncherApplication methodsFor:'private-settings callBacks'!
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1045
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1046
changeViewStyleTo:newStyle
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
    newStyle notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1049
        self withWaitCursorDo:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1050
            (transcript ? Transcript) showCR:'change style to ' , newStyle , ' ...'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1051
            View defaultStyle:newStyle asSymbol.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1052
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1053
        self reopenLauncher.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1054
        DebugView newDebugger.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1055
    ]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1056
!
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
fontBoxForEncoding:encodingMatch
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1059
    "open a fontBox, showing fonts which match some encoding
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1060
     (used when changing to japanese ...)"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1061
4062
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
  1062
    ^ LauncherDialogs fontBoxForEncoding:encodingMatch
2047
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1063
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1064
"/    |box y b
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1065
"/     labelDef buttonDef listDef menuDef textDef
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1066
"/     models labels allOfThem filter|
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1067
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1068
"/    encodingMatch notNil ifTrue:[
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1069
"/        filter := [:f | f encoding notNil
2047
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1070
"/                        and:[encodingMatch match:f encoding]].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1071
"/    ].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1072
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1073
"/    models := OrderedCollection new.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1074
"/    labels := OrderedCollection new.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1075
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1076
"/    models add:(allOfThem := nil asValue).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1077
"/    models add:(labelDef := Label defaultFont asValue).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1078
"/    models add:(buttonDef := Button defaultFont asValue).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1079
"/    models add:(listDef := SelectionInListView defaultFont asValue).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1080
"/    models add:(menuDef := MenuView defaultFont asValue).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1081
"/    models add:(textDef := TextView defaultFont asValue).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1082
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1083
"/    box := Dialog new.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1084
"/    box label:(resources string:'Font settings').
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1085
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1086
"/    models
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1087
"/    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
  1088
"/    do:[:model :title |
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1089
"/        |y2 lbl f i|
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1090
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1091
"/        f := model value.
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
"/        (box addTextLabel:title) adjust:#left.
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
"/        y := box yPosition.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1096
"/        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
  1097
"/        b relativeExtent:nil; extent:(b preferredExtent).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1098
"/        y2 := box yPosition.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1099
"/        box yPosition:y.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1100
"/        i := box leftIndent.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1101
"/        box leftIndent:(b widthIncludingBorder + View viewSpacing).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1102
"/        (lbl := box addTextLabel:'')
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1103
"/            adjust:#left;
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1104
"/            font:(model value);
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1105
"/            labelChannel:(BlockValue
2047
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1106
"/                            with:[:v | |f|
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1107
"/                                f := v value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1108
"/                                f isNil ifTrue:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1109
"/                                    ''
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1110
"/                                ] ifFalse:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1111
"/                                    f userFriendlyName
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1112
"/                                ]
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1113
"/                            ]
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1114
"/                            argument:model).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1115
"/        labels add:lbl.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1116
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1117
"/        box leftIndent:i.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1118
"/        box yPosition:(box yPosition max:y2).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1119
"/        box addVerticalSpace.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1120
"/        box addHorizontalLine.
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
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1123
"/        b action:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1124
"/            |f|
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1125
"/
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1126
"/            f := FontPanel
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1127
"/                fontFromUserInitial:(model value)
2047
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1128
"/                              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
  1129
"/                             filter:filter.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1130
"/            f notNil ifTrue:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1131
"/                model == allOfThem ifTrue:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1132
"/                    models do:[:m | m value:f].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1133
"/                    labels do:[:l | l font:f]
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1134
"/                ] ifFalse:[
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1135
"/                    model value:f.
2047
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1136
"/                    lbl font:f.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1137
"/                ].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1138
"/            ]
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
"/        model == allOfThem ifTrue:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1141
"/            box addVerticalSpace
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1142
"/        ]
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1143
"/    ].
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
"/    box addAbortButton; addOkButton.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1146
"/    (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
  1147
"/        action:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1148
"/            "/ fetch defaults
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1149
"/            View readStyleSheetAndUpdateAllStyleCaches.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1150
"/            labelDef value: Label defaultFont.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1151
"/            buttonDef value: Button defaultFont.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1152
"/            listDef value: SelectionInListView defaultFont.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1153
"/            menuDef value: MenuView defaultFont.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1154
"/            textDef value: TextView defaultFont.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1155
"/        ].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1156
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1157
"/    box open.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1158
"/    box accepted ifTrue:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1159
"/        Label defaultFont:labelDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1160
"/        Button defaultFont:buttonDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1161
"/        Toggle defaultFont:buttonDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1162
"/        SelectionInListView defaultFont:listDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1163
"/        MenuView defaultFont:menuDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1164
"/        PullDownMenu defaultFont:menuDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1165
"/        TextView defaultFont:textDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1166
"/        EditTextView defaultFont:textDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1167
"/        CodeView defaultFont:textDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1168
"/    ].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1169
"/    box destroy.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1170
"/    ^ box accepted
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1171
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1172
    "Modified: / 15.9.1998 / 22:04:56 / cg"
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
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1175
reopenLauncher
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1176
    "reopen a new launcher.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1177
     for now (since style & language settings currently do
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1178
     not affect living views ...)
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1179
     WARNING: bad design: Message known in LauncherDialogs"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1180
2034
b3537f805381 force reopen at same position (fvwm & mwm)
Claus Gittinger <cg@exept.de>
parents: 2021
diff changeset
  1181
    |oldOrigin contents builder newLauncher|
b3537f805381 force reopen at same position (fvwm & mwm)
Claus Gittinger <cg@exept.de>
parents: 2021
diff changeset
  1182
b3537f805381 force reopen at same position (fvwm & mwm)
Claus Gittinger <cg@exept.de>
parents: 2021
diff changeset
  1183
    oldOrigin := self window origin.
2458
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
  1184
    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
  1185
    builder := self class openAt:oldOrigin.
3787
88b39d2d33d8 tzpe on dialog label
Claus Gittinger <cg@exept.de>
parents: 3782
diff changeset
  1186
    builder window waitUntilVisible; origin:oldOrigin.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1187
    newLauncher := builder application.
2458
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
  1188
    transcript notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1189
        newLauncher transcript list:contents; hideCursor; scrollToBottom; cursorToEnd; showCursor.
2458
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
  1190
    ].
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1191
    ^ newLauncher
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1192
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1193
    "Modified: / 4.8.1998 / 17:08:33 / cg"
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
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1196
!AbstractLauncherApplication methodsFor:'queries'!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1197
3410
fd14c97c539a *** empty log message ***
penk
parents: 3408
diff changeset
  1198
bugReporterAvailable
fd14c97c539a *** empty log message ***
penk
parents: 3408
diff changeset
  1199
    ^ BugGUI notNil
8643
e69b9268f450 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8625
diff changeset
  1200
    or:[ Expecco::ExpeccoNetAPI notNil ]
3410
fd14c97c539a *** empty log message ***
penk
parents: 3408
diff changeset
  1201
!
fd14c97c539a *** empty log message ***
penk
parents: 3408
diff changeset
  1202
3120
564ee1530a8e startPDALauncher item invisible for the normal user
Claus Gittinger <cg@exept.de>
parents: 3100
diff changeset
  1203
hasPDALauncher
564ee1530a8e startPDALauncher item invisible for the normal user
Claus Gittinger <cg@exept.de>
parents: 3100
diff changeset
  1204
    ^ PDALauncher notNil
564ee1530a8e startPDALauncher item invisible for the normal user
Claus Gittinger <cg@exept.de>
parents: 3100
diff changeset
  1205
!
564ee1530a8e startPDALauncher item invisible for the normal user
Claus Gittinger <cg@exept.de>
parents: 3100
diff changeset
  1206
10907
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1207
monticelloRepositoryAvailable
11468
3d585b53fb82 changed:
Claus Gittinger <cg@exept.de>
parents: 11417
diff changeset
  1208
    ^ true "MCRepositoryBrowser notNil" "/ - will install, if required.
10907
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1209
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1210
    "Created: / 25-11-2011 / 17:54:37 / cg"
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1211
!
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1212
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1213
processName
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1214
    "for monitors only - my name"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1215
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1216
    ^ 'ST/X Launcher'
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
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1219
3575
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1220
remoteImageBrowserAvailable
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1221
    ^ SmalltalkShareClient notNil and:[RemoteImage notNil]
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1222
!
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1223
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1224
transcript
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1225
    "my transcript"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1226
3079
9e8b81438edb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3078
diff changeset
  1227
    transcript isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1228
        ^ Transcript current
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1229
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1230
    ^ transcript
9330
378159dded04 refactored for better reusability (menu configuration)
Claus Gittinger <cg@exept.de>
parents: 9303
diff changeset
  1231
!
378159dded04 refactored for better reusability (menu configuration)
Claus Gittinger <cg@exept.de>
parents: 9303
diff changeset
  1232
378159dded04 refactored for better reusability (menu configuration)
Claus Gittinger <cg@exept.de>
parents: 9303
diff changeset
  1233
windowTreeViewAvailable
378159dded04 refactored for better reusability (menu configuration)
Claus Gittinger <cg@exept.de>
parents: 9303
diff changeset
  1234
    ^ false "/ WindowTreeView notNil
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1235
! !
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1236
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
  1237
!AbstractLauncherApplication methodsFor:'settings dialog'!
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
  1238
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
  1239
openSettings
14752
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
  1240
    ^ self class openSettingsFor: self.
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
  1241
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
  1242
    "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
  1243
!
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
  1244
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
  1245
settingsClosed
13087
82522521c37e class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12928
diff changeset
  1246
    LastSettingsPageName := OpenSettingsDialog selectedItemsName.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1247
    OpenSettingsDialog := nil.
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
  1248
! !
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
  1249
4863
66a3c33f28a2 method category rename
Claus Gittinger <cg@exept.de>
parents: 4862
diff changeset
  1250
!AbstractLauncherApplication methodsFor:'startup & release'!
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1251
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1252
addTopViewsToCurrentProject
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1253
    "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
  1254
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1255
    ^ self
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
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1258
2314
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1259
closeDownViews
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1260
    OpenLaunchers remove:self ifAbsent:nil.
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1261
    super closeDownViews
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1262
!
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1263
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1264
postBuildWith:aBuilder
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1265
    super postBuildWith:aBuilder.
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1266
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1267
    OpenLaunchers isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1268
        OpenLaunchers := IdentitySet new.
2314
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1269
    ].
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1270
    OpenLaunchers add:self
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
!
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1273
5210
e63c19690b68 reOpen pushed up;
Claus Gittinger <cg@exept.de>
parents: 5181
diff changeset
  1274
reOpen
e63c19690b68 reOpen pushed up;
Claus Gittinger <cg@exept.de>
parents: 5181
diff changeset
  1275
    "reopen a new launcher.
e63c19690b68 reOpen pushed up;
Claus Gittinger <cg@exept.de>
parents: 5181
diff changeset
  1276
     for now (since style & language settings currently do
e63c19690b68 reOpen pushed up;
Claus Gittinger <cg@exept.de>
parents: 5181
diff changeset
  1277
     not affect living views ...)"
e63c19690b68 reOpen pushed up;
Claus Gittinger <cg@exept.de>
parents: 5181
diff changeset
  1278
e63c19690b68 reOpen pushed up;
Claus Gittinger <cg@exept.de>
parents: 5181
diff changeset
  1279
    self reopenLauncher "/ WARNING: bad design: Message known in LauncherDialogs
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
    "Modified: / 31.7.1998 / 22:48:12 / cg"
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
2040
06dd0e21aae0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2038
diff changeset
  1284
requestForWindowClose
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1285
    "close request from windowing system (window close);
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1286
     confirm and ask if closing of launcher only or
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1287
     a smalltalk-exit is wanted"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1288
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1289
    |answer|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1290
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1291
    answer := Dialog
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1292
                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
  1293
                labels:(resources array:#('Cancel' 'Close' 'Exit'))
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1294
                default:3.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1295
    answer isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1296
        "/ cancel
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1297
        ^ false
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1298
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1299
5989
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1300
    answer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1301
        ^ true
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1302
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1303
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1304
    self exit
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1305
2160
028c1d5740e5 exit smalltalk is now the default, when closing the launcher.
Claus Gittinger <cg@exept.de>
parents: 2149
diff changeset
  1306
    "Modified: / 20.5.1999 / 17:24:47 / cg"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1307
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1308
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1309
saveAndTerminateRequest
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1310
    "some windowManagers can send this, to shutDown an application
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1311
     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
  1312
     Although I have not yet encountered such a windowManager,
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1313
     we are already prepared for this ;-)"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1314
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1315
    self snapshot.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1316
    super saveAndTerminateRequest
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1317
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1318
! !
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1319
4862
1838e1e01c92 method category rename
Claus Gittinger <cg@exept.de>
parents: 4859
diff changeset
  1320
!AbstractLauncherApplication methodsFor:'user actions-about'!
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1321
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1322
openLicenseConditions
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1323
    "open an HTML browser on the 'LICENCE' document"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1324
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1325
    self withWaitCursorDo:[
15925
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1326
        |rel lang doc doc_De doc_En|
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1327
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1328
        rel := Smalltalk releaseIdentification.
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1329
        ((rel = 'ST/X_free_vsn') or:[rel = 'ST/X_demo_free_vsn']) ifTrue:[
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1330
            doc_En := 'english/LICENCE_FREE_STX.html'.
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1331
            doc_De := 'german/LICENCE_FREE_STX.html'.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1332
        ] ifFalse:[
15925
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1333
            doc_En := 'english/LICENCE_STX.html'.
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1334
            doc_De := 'german/LICENCE_STX.html'.
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1335
        ].    
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1336
        ((lang := UserPreferences current language) = 'de'
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1337
        or:[lang = 'german']) ifTrue:[
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1338
            doc := doc_De
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1339
        ] ifFalse:[
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1340
            doc := doc_En
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1341
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1342
        doc := resources at:'LICENCEFILE' default:doc.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1343
        self showDocumentation:('../' , doc)
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1344
    ]
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1345
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1346
    "Created: / 5.2.1998 / 21:43:19 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1347
    "Modified: / 23.4.1998 / 11:45:53 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1348
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1349
4862
1838e1e01c92 method category rename
Claus Gittinger <cg@exept.de>
parents: 4859
diff changeset
  1350
!AbstractLauncherApplication methodsFor:'user actions-classes'!
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1351
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1352
browseAllBreakAndTracePoints
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1353
    "open a browser showing all breakPointed/traced methods
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1354
     (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
  1355
13146
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1356
    |filter|
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1357
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1358
    "/ only methods which are still anchored in the class are relevant here
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1359
    "/ (i.e. allInstances may return too many)
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1360
    filter := [:m | m mclass notNil].
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1361
3140
1f85ff8a1a22 UserPreference access
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  1362
    UserPreferences systemBrowserClass
13146
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1363
        browseMethods:(Set new
14534
7a7c0fbe16f8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14475
diff changeset
  1364
                        addAll:(WrappedMethod allWrappedMethods select:filter);
7a7c0fbe16f8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14475
diff changeset
  1365
                        addAll:(MethodWithBreakpoints allBreakpointedMethods select:filter);
13146
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1366
                        yourself)
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1367
        title:'All breakPointed/traced methods'
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1368
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1369
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1370
browseImplementors
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1371
    "open an implementors- browser after asking for a selector"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1372
11270
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1373
    |browserClass selector dialog|
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1374
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1375
    browserClass := UserPreferences systemBrowserClass.
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1376
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1377
    Tools::SearchDialog notNil ifTrue:[
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1378
        "/ use a better dialog
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1379
        dialog := Tools::SearchDialog new
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1380
            setupToAskForMethodSearchTitle:(resources string:'Selector to browse implementors of:\(TAB for completion; matchPattern allowed)')
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1381
            forBrowser:nil
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1382
            searchWhat:#selector searchArea:#everywhere
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1383
            withCaseIgnore:true withMatch:true
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1384
            withMethodList:false
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1385
            allowFind:false allowBuffer:false allowBrowser:true
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1386
            withTextEntry:true.
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1387
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1388
        dialog askThenDo:[
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1389
            |classes methods isMethod selector ignoreCase match|
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1390
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1391
            (classes := dialog classesToSearch) notEmptyOrNil ifTrue:[
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1392
                (selector := dialog selectorToSearch) notEmptyOrNil ifTrue:[
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1393
                    browserClass 
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1394
                        browseImplementorsOf:selector 
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1395
                        in:classes
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1396
                        ignoreCase:(dialog searchIgnoringCase)
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1397
                        match:(dialog searchWithMatch)    
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1398
                        title:(SystemBrowser classResources string:'implementors of: %1' with:selector).
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1399
                ].
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1400
            ].
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1401
        ].
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1402
        ^ self.
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1403
    ].
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1404
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1405
    "/ the simple dialog
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1406
    selector := Dialog
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1407
                    requestSelector:(resources string:'Browse implementors of (Tab for completion):')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1408
                    okLabel:(resources string:'Browse')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1409
                    initialAnswer:''.
3369
ac3ce702451c senders/implementors: Tab completion
Claus Gittinger <cg@exept.de>
parents: 3362
diff changeset
  1410
11270
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1411
    selector notEmptyOrNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1412
        self withWaitCursorDo:[
11270
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1413
            browserClass browseImplementorsMatching:selector
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1414
        ]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1415
    ].
3442
38a5ec1d3add *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3423
diff changeset
  1416
11270
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1417
    "Modified: / 14-02-2012 / 14:17:51 / cg"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1418
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1419
14943
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1420
browseReferencesToClass
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1421
    "open a browser after asking for a class"
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1422
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1423
    |browserClass 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 := UserPreferences systemBrowserClass.
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
    class := Dialog
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1428
                    requestClassName:(resources string:'Browse References to Class named (Tab for Completion):')
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1429
                    okLabel:(resources string:'Browse')
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1430
                    initialAnswer:''.
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1431
    class notNil ifTrue:[
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1432
        self withWaitCursorDo:[
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1433
            browserClass browseReferendsOf:class
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1434
        ]
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1435
    ].
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
    "Modified: / 14-02-2012 / 14:20:56 / cg"
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
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1440
browseResources
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1441
    "open a resource- browser after asking for a resource string"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1442
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1443
    |box resourceHolder valueHolder component rsrc value t anyString|
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
    anyString := resources string:'* any *'.
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
    resourceHolder := ValueHolder newString.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1448
    valueHolder := '*' asValue.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1449
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1450
    box := DialogBox new.
6637
874c6de40070 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6621
diff changeset
  1451
    box label:(resources string:'Resource search:').
13735
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  1452
    component := box 
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  1453
                    addTextLabel:(resources stringWithCRs:'Search for methods which contain a\particular resource specification')
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  1454
                    adjust:#left.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1455
    box addVerticalSpace:10.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1456
13735
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  1457
    component := box 
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  1458
                    addTextLabel:(resources stringWithCRs:'Resource symbol (empty for any; no matchPattern allowed):')
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  1459
                    adjust:#left.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1460
    component :=  box addComboBoxOn:resourceHolder tabable:true.
3014
cb531619c185 Don't use obsolete methods.
Stefan Vogel <sv@exept.de>
parents: 3003
diff changeset
  1461
    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
  1462
13735
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  1463
    component := box 
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  1464
                    addTextLabel:(resources stringWithCRs:'Resource value (* for any; matchPattern is allowed):')
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  1465
                    adjust:#left.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1466
    box addInputFieldOn:valueHolder tabable:true.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1467
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1468
    box addVerticalSpace:10.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1469
    box addHelpButtonFor:'programming/language.html#RESOURCEDEFS'.
2048
f8c010698b75 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2047
diff changeset
  1470
    box addAbortAndOkButtons.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1471
3293
d7b925f89a7b dont use explicit showAtPointer
Claus Gittinger <cg@exept.de>
parents: 3288
diff changeset
  1472
    box open.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1473
    box destroy.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1474
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1475
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1476
        rsrc := resourceHolder value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1477
        value := valueHolder value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1478
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1479
        (rsrc size == 0 or:[rsrc = '*' or:[rsrc = anyString]]) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1480
            t := 'methods with any resource'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1481
            rsrc := nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1482
        ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1483
            t := 'methods with #' , rsrc , '-resource'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1484
            rsrc := rsrc withoutSeparators asSymbol
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1485
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1486
        (value size == 0 or:[value = '*']) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1487
            t := t , ' and any value'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1488
            value := nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1489
        ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1490
            t := t , ' and value ' , value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1491
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1492
        self withWaitCursorDo:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1493
            UserPreferences systemBrowserClass
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1494
                browseForResource:rsrc
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1495
                containing:value
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1496
                in:(Smalltalk allClasses)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1497
                title:t
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1498
        ]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1499
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1500
!
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
browseSenders
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1503
    "open a senders- browser after asking for a selector"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1504
11270
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1505
    |browserClass dialog selector|
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1506
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1507
    browserClass := UserPreferences systemBrowserClass.
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1508
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1509
    Tools::SearchDialog notNil ifTrue:[
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1510
        "/ use a better dialog
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1511
        dialog := Tools::SearchDialog new
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1512
            setupToAskForMethodSearchTitle:(resources string:'Selector to browse senders of:\(TAB for completion; matchPattern allowed)')
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1513
            forBrowser:nil
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1514
            searchWhat:#selector searchArea:#everywhere
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1515
            withCaseIgnore:true withMatch:true
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1516
            withMethodList:false
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1517
            allowFind:false allowBuffer:false allowBrowser:true
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1518
            withTextEntry:true.
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1519
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1520
        dialog askThenDo:[
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1521
            |classes methods isMethod selector ignoreCase match|
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1522
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1523
            (classes := dialog classesToSearch) notEmptyOrNil ifTrue:[
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1524
                (selector := dialog selectorToSearch) notEmptyOrNil ifTrue:[
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1525
                    browserClass 
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1526
                        browseAllCallsOn:selector 
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1527
                        in:classes
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1528
                        ignoreCase:(dialog searchIgnoringCase)
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1529
                        match:(dialog searchWithMatch)    
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1530
                        title:(SystemBrowser classResources string:'senders of: %1' with:selector).
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1531
                ].
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1532
            ].
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1533
        ].
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1534
        ^ self.
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1535
    ].
3369
ac3ce702451c senders/implementors: Tab completion
Claus Gittinger <cg@exept.de>
parents: 3362
diff changeset
  1536
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1537
    selector := Dialog
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1538
                    requestSelector:(resources string:'Browse Senders of (Tab for Completion):')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1539
                    okLabel:(resources string:'Browse')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1540
                    initialAnswer:''.
3369
ac3ce702451c senders/implementors: Tab completion
Claus Gittinger <cg@exept.de>
parents: 3362
diff changeset
  1541
    selector size > 0 ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1542
        self withWaitCursorDo:[
14943
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1543
            browserClass browseAllCallsOn:selector
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1544
        ]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1545
    ].
3442
38a5ec1d3add *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3423
diff changeset
  1546
11270
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1547
    "Modified: / 14-02-2012 / 14:20:56 / cg"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1548
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1549
4199
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
  1550
browseUnboundGlobals
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
  1551
    "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
  1552
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
  1553
    self withWaitCursorDo:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1554
        UserPreferences systemBrowserClass
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1555
            browseReferendsOfUnboundGlobalsWithTitle:(resources string:'References to unbound global variables')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1556
            warnIfNone:true
4199
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
  1557
    ]
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
  1558
!
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
  1559
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1560
browseUndeclared
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1561
    "open a browser on methods refering to undeclared variables"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1562
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1563
    self withWaitCursorDo:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1564
        UserPreferences systemBrowserClass
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1565
            browseReferendsOf:(Smalltalk undeclaredPrefix , '*')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1566
            title:(resources string:'References to undeclared variables')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1567
            warnIfNone:true
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1568
    ]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1569
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1570
3778
5595e6f544ab undeclared variable stuff
penk
parents: 3741
diff changeset
  1571
clearUndeclaredVariables
5595e6f544ab undeclared variable stuff
penk
parents: 3741
diff changeset
  1572
    "remove all undeclared variables"
5595e6f544ab undeclared variable stuff
penk
parents: 3741
diff changeset
  1573
5595e6f544ab undeclared variable stuff
penk
parents: 3741
diff changeset
  1574
    Smalltalk clearUndeclaredVariables
5595e6f544ab undeclared variable stuff
penk
parents: 3741
diff changeset
  1575
!
5595e6f544ab undeclared variable stuff
penk
parents: 3741
diff changeset
  1576
5597
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1577
newSystemBrowserClass
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1578
    |newSystemBrowserClass|
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1579
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1580
    newSystemBrowserClass := Tools::NewSystemBrowser ? NewSystemBrowser.
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1581
    newSystemBrowserClass isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1582
        self warn:'This needs the NewSystemBrowser to be loaded.'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1583
        AbortOperationRequest raise.
5597
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1584
    ].
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1585
    ^ newSystemBrowserClass
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
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1588
removeAllBreakAndTracePoints
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1589
    "remove all break- and trace points"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1590
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1591
    self
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1592
        withCursor:Cursor execute
13146
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1593
        do:[ 
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1594
            MessageTracer cleanup.
14534
7a7c0fbe16f8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14475
diff changeset
  1595
            MethodWithBreakpoints allBreakpointedMethods do:[:m | m restoreOriginalMethod]
13146
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1596
        ]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1597
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1598
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1599
startClassBrowser
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1600
    "open a classBrowser; asks for class"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1601
3140
1f85ff8a1a22 UserPreference access
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  1602
    UserPreferences systemBrowserClass askThenBrowseClass
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1603
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1604
3100
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1605
startClassBrowserOnChangedClasses
2854
ac97ea47bb08 browse changed classes added
Claus Gittinger <cg@exept.de>
parents: 2845
diff changeset
  1606
    "open a classBrowser on the changeSet"
ac97ea47bb08 browse changed classes added
Claus Gittinger <cg@exept.de>
parents: 2845
diff changeset
  1607
5597
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1608
    self newSystemBrowserClass openOnClassesInChangeSet
2854
ac97ea47bb08 browse changed classes added
Claus Gittinger <cg@exept.de>
parents: 2845
diff changeset
  1609
!
ac97ea47bb08 browse changed classes added
Claus Gittinger <cg@exept.de>
parents: 2845
diff changeset
  1610
3100
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1611
startClassBrowserOnChangedMethods
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1612
    "open a classBrowser on the changeSet"
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1613
5597
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1614
    self newSystemBrowserClass openOnMethodsInChangeSet
3100
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1615
!
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1616
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1617
startClassBrowserOnChanges
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1618
    "open a classBrowser on the changeSet"
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1619
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1620
    ^ self startClassBrowserOnChangedClasses
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
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1623
startClassHierarchyBrowser
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1624
    "open a classHierarchyBrowser; asks for class"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1625
3140
1f85ff8a1a22 UserPreference access
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  1626
    UserPreferences systemBrowserClass askThenBrowseClassHierarchy
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1627
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1628
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1629
startFullClassBrowser
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1630
    "open a fullClass systemBrowser; asks for class"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1631
3140
1f85ff8a1a22 UserPreference access
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
  1632
    UserPreferences systemBrowserClass askThenBrowseFullClassProtocol
3575
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1633
!
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1634
10907
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1635
startMonticelloRepositoryBrowser
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1636
    "open a monticello repository browser. Unfinished & experimental."
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1637
11468
3d585b53fb82 changed:
Claus Gittinger <cg@exept.de>
parents: 11417
diff changeset
  1638
    MCRepositoryBrowser isNil ifTrue:[
3d585b53fb82 changed:
Claus Gittinger <cg@exept.de>
parents: 11417
diff changeset
  1639
        Smalltalk loadPackage:'stx:goodies/monticello'
3d585b53fb82 changed:
Claus Gittinger <cg@exept.de>
parents: 11417
diff changeset
  1640
    ].
3d585b53fb82 changed:
Claus Gittinger <cg@exept.de>
parents: 11417
diff changeset
  1641
10907
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1642
    MCRepositoryBrowser open.
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1643
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1644
    "Created: / 25-11-2011 / 17:55:18 / cg"
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1645
!
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1646
3575
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1647
startRemoteImageBrowser
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1648
    "open a remoteImage browser; asks for hostname.
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1649
     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
  1650
     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
  1651
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1652
    |hostName|
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 := Dialog request:'Remote Host:'.
8428
124b2613d6aa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8421
diff changeset
  1655
    hostName isEmptyOrNil ifTrue:[^ self].
124b2613d6aa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8421
diff changeset
  1656
3575
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1657
    SystemBrowser openOnRemoteImageOnHost:hostName port:nil.
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1658
!
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1659
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1660
startSnapshotImageBrowser
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1661
    "open a snapshotImage browser; asks for filename.
4491
b5f8412a83e2 comments
Claus Gittinger <cg@exept.de>
parents: 4479
diff changeset
  1662
     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
  1663
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1664
    |imageFileName|
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 := 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
  1667
    imageFileName isEmptyOrNil ifTrue: [^ self ].
124b2613d6aa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8421
diff changeset
  1668
3575
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1669
    SystemBrowser openOnSnapShotImage:imageFileName
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1670
! !
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1671
4862
1838e1e01c92 method category rename
Claus Gittinger <cg@exept.de>
parents: 4859
diff changeset
  1672
!AbstractLauncherApplication methodsFor:'user actions-demos'!
2038
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
  1673
3035
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
  1674
startPDALauncher
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
  1675
    self startRemoteLauncherWithSetup:[:newDisplay | newDisplay bePDA].
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
  1676
!
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
  1677
2038
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
  1678
startRemoteLauncher
3035
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
  1679
    self startRemoteLauncherWithSetup:[:newDisplay | ].
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
  1680
!
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
  1681
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
  1682
startRemoteLauncherWithSetup:aSetupBlock
2754
565abad0ef64 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2737
diff changeset
  1683
    |host remoteDisplay remoteDisplayClass|
2038
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
  1684
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1685
    host := Dialog
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1686
                request:(resources string:'Remote Launcher on which display:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1687
                initialAnswer:'{hostName}:0'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1688
                initialSelection:(1 to:10).
2038
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
  1689
    host size > 0 ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1690
        (host includes:$:) ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1691
            host := (host , ':0')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1692
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1693
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1694
        remoteDisplayClass := XWorkstation.
2754
565abad0ef64 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2737
diff changeset
  1695
2755
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
  1696
"/        "/ 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
  1697
"/        "/ (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
  1698
"/        "/ 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
  1699
"/
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
  1700
"/        "/ only simulated GL can be done remote (i.e. not on SGI)
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1701
"/        (Screen current supportsGLDrawing
2755
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
  1702
"/        and:[Screen current isTrueGL not])
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
  1703
"/        ifTrue:[
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
  1704
"/            remoteDisplayClass := GLXWorkstation.
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
  1705
"/        ].
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
  1706
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1707
        [
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1708
            remoteDisplay := remoteDisplayClass newDispatchingFor:host.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1709
        ] on:Screen deviceOpenErrorSignal do:[:ex|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1710
            self warn:'Could not connect to display: ''' , host , '''.'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1711
            ^ self
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1712
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1713
        aSetupBlock value:remoteDisplay.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1714
        Screen currentScreenQuerySignal
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1715
            answer:remoteDisplay
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1716
            do:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1717
                self class open.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1718
            ]
2038
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
  1719
    ].
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
  1720
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
  1721
    "Created: / 10.9.1998 / 11:48:42 / cg"
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
4862
1838e1e01c92 method category rename
Claus Gittinger <cg@exept.de>
parents: 4859
diff changeset
  1724
!AbstractLauncherApplication methodsFor:'user actions-file'!
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1725
5989
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1726
exit
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1727
    "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
  1728
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1729
    |fileName saveAndExit box|
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
    box := EnterBox2 title:(resources string:'Save image before exiting?')
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1732
        okText:(resources string:'Exit')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1733
        abortText:(resources string:'Cancel')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1734
        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
  1735
    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
  1736
    box initialText: ObjectMemory nameForSnapshot.
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1737
    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
  1738
    box showAtPointer.
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1739
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1740
    saveAndExit notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1741
        [
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1742
            saveAndExit ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1743
                self saveImageAs:fileName
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1744
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1745
            Smalltalk exit.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1746
        ] on:SnapshotError do:[:ex|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1747
            "do not exit when snapshot writing fails"
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1748
            self warn:ex description.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1749
        ]
16341
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1750
    ].
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1751
    
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1752
    saveAndExit ~~ true ifTrue:[
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1753
        "/ not saved - see if settings changed
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1754
        UserPreferences current isModified ifTrue:[
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1755
            (Dialog confirm:(resources string:'Save changed settings before exiting?')) ifTrue:[
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1756
                SettingsDialog saveSettingsAsDefaultSettings 
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1757
            ]
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1758
        ]
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
    
5989
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1761
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1762
    "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
  1763
!
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1764
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1765
fileLoadPackage
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1766
    "open a dialog showing wellknown packages (listed in the packages directory)
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1767
     and offer to load the selected one(s).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1768
     TODO: make this a little app instead of an ad-hoc dialog, 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1769
     add remote packages (central goody repository?),
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1770
     add a description text view, showing more info about the package (from where?)"    
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1771
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1772
    self class openLoadPackageDialog.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1773
!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1774
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1775
saveImageAs: aFileName
6233
b2a1e0b092f0 Make snapshot writing more robust against errors.
Stefan Vogel <sv@exept.de>
parents: 6175
diff changeset
  1776
    "save image in aFilename.
b2a1e0b092f0 Make snapshot writing more robust against errors.
Stefan Vogel <sv@exept.de>
parents: 6175
diff changeset
  1777
     Sender has to handle SnapshotError"
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1778
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1779
    aFileName notNil ifTrue:[
11684
f405935b2a6e changed: #saveImageAs:
Claus Gittinger <cg@exept.de>
parents: 11490
diff changeset
  1780
        self withWriteCursorDo:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1781
            ObjectMemory snapShotOn:aFileName
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1782
        ].
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1783
    ].
11684
f405935b2a6e changed: #saveImageAs:
Claus Gittinger <cg@exept.de>
parents: 11490
diff changeset
  1784
f405935b2a6e changed: #saveImageAs:
Claus Gittinger <cg@exept.de>
parents: 11490
diff changeset
  1785
    "Modified: / 27-07-2012 / 09:46:19 / cg"
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1786
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1787
4862
1838e1e01c92 method category rename
Claus Gittinger <cg@exept.de>
parents: 4859
diff changeset
  1788
!AbstractLauncherApplication methodsFor:'user actions-help'!
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1789
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1790
showBookPrintDocument
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1791
    "open an HTML browser on the 'book'-printing document"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1792
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1793
    self showDocumentation:'BOOK.html'
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1794
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1795
8314
bfc7e0a01c4b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8298
diff changeset
  1796
showCredits
13950
05f423b4291a Fix in AbstractLauncherApplication>>#showCredits
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13918
diff changeset
  1797
    self showDocumentation:'credits.html'
05f423b4291a Fix in AbstractLauncherApplication>>#showCredits
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13918
diff changeset
  1798
05f423b4291a Fix in AbstractLauncherApplication>>#showCredits
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13918
diff changeset
  1799
    "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
  1800
!
bfc7e0a01c4b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8298
diff changeset
  1801
6175
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1802
showPortInfo
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1803
    |portNr url|
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1804
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1805
    portNr := Dialog request:'Port Number:'.
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1806
    portNr isEmptyOrNil ifTrue:[^ self].
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1807
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1808
    url := 'http://www.grc.com/port_' , portNr printString , '.htm'.
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1809
    self withWaitCursorDo:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1810
        HTMLDocumentView openFullOnURL:url.
6175
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1811
    ]
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1812
!
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1813
4448
3fe9b324e809 showRFC added
Claus Gittinger <cg@exept.de>
parents: 4436
diff changeset
  1814
showRFC
3fe9b324e809 showRFC added
Claus Gittinger <cg@exept.de>
parents: 4436
diff changeset
  1815
    |rfc url|
3fe9b324e809 showRFC added
Claus Gittinger <cg@exept.de>
parents: 4436
diff changeset
  1816
8401
4e41a3ae1904 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8385
diff changeset
  1817
    rfc := Dialog request:'RFC Number ("index" for list):'.
4448
3fe9b324e809 showRFC added
Claus Gittinger <cg@exept.de>
parents: 4436
diff changeset
  1818
    rfc isEmptyOrNil ifTrue:[^ self].
3fe9b324e809 showRFC added
Claus Gittinger <cg@exept.de>
parents: 4436
diff changeset
  1819
8401
4e41a3ae1904 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8385
diff changeset
  1820
    rfc = 'index' ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1821
        url := 'http://www.faqs.org/rfcs/'.
8401
4e41a3ae1904 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8385
diff changeset
  1822
    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1823
        url := 'http://www.faqs.org/rfcs/rfc' , rfc printString , '.html'.
8401
4e41a3ae1904 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8385
diff changeset
  1824
    ].
4448
3fe9b324e809 showRFC added
Claus Gittinger <cg@exept.de>
parents: 4436
diff changeset
  1825
    self withWaitCursorDo:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1826
        HTMLDocumentView openFullOnURL:url.
4448
3fe9b324e809 showRFC added
Claus Gittinger <cg@exept.de>
parents: 4436
diff changeset
  1827
    ]
3fe9b324e809 showRFC added
Claus Gittinger <cg@exept.de>
parents: 4436
diff changeset
  1828
!
3fe9b324e809 showRFC added
Claus Gittinger <cg@exept.de>
parents: 4436
diff changeset
  1829
8117
7043c5e27bee tip of the day
Claus Gittinger <cg@exept.de>
parents: 8115
diff changeset
  1830
showTipOfTheDay
7043c5e27bee tip of the day
Claus Gittinger <cg@exept.de>
parents: 8115
diff changeset
  1831
    "open a tip-of-the-day window"
7043c5e27bee tip of the day
Claus Gittinger <cg@exept.de>
parents: 8115
diff changeset
  1832
7043c5e27bee tip of the day
Claus Gittinger <cg@exept.de>
parents: 8115
diff changeset
  1833
    DidYouKnowTipViewer open
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
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1836
startClassDocumentation
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1837
    "open an HTML browser on the 'classDoc/TOP' document"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1838
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1839
    self showDocumentation:'classDoc/TOP.html'
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1840
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1841
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1842
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1843
startDocumentationIndex
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1844
    "open an HTML browser on the 'index' document"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1845
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1846
    self showDocumentation:'index.html'
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1847
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1848
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1849
startDocumentationTool
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1850
    "open an HTML browser on the 'TOP' document"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1851
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1852
    self showDocumentation:'TOP.html'
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1853
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1854
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1855
15385
8d0380a77aba class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15367
diff changeset
  1856
startLauncherDocumentation
8d0380a77aba class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15367
diff changeset
  1857
    "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
  1858
8d0380a77aba class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15367
diff changeset
  1859
    self showDocumentation:'tools/misc/TOP.html#LAUNCHER'
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
8625
40edf78ff6aa changed #startProgrammersGuide
Claus Gittinger <cg@exept.de>
parents: 8622
diff changeset
  1862
startProgrammersGuide
40edf78ff6aa changed #startProgrammersGuide
Claus Gittinger <cg@exept.de>
parents: 8622
diff changeset
  1863
    "open an HTML browser on the 'programers guide' document"
40edf78ff6aa changed #startProgrammersGuide
Claus Gittinger <cg@exept.de>
parents: 8622
diff changeset
  1864
40edf78ff6aa changed #startProgrammersGuide
Claus Gittinger <cg@exept.de>
parents: 8622
diff changeset
  1865
    self showDocumentation:'programming/TOP.html'
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
8769
1698bfb7f08e added: #startSmalltalkTutorial
Claus Gittinger <cg@exept.de>
parents: 8761
diff changeset
  1868
startSmalltalkTutorial
1698bfb7f08e added: #startSmalltalkTutorial
Claus Gittinger <cg@exept.de>
parents: 8761
diff changeset
  1869
    "open an HTML browser on 'doc\books\JoyOfST\IntroToST.html' document"
1698bfb7f08e added: #startSmalltalkTutorial
Claus Gittinger <cg@exept.de>
parents: 8761
diff changeset
  1870
1698bfb7f08e added: #startSmalltalkTutorial
Claus Gittinger <cg@exept.de>
parents: 8761
diff changeset
  1871
    self showDocumentation:'books/JoyOfST/IntroToST.html'
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
8401
4e41a3ae1904 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8385
diff changeset
  1874
startToolsDocumentation
4e41a3ae1904 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8385
diff changeset
  1875
    "open an HTML browser on the 'tools/TOP' document"
4e41a3ae1904 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8385
diff changeset
  1876
4e41a3ae1904 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8385
diff changeset
  1877
    self showDocumentation:'tools/TOP.html'
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
5071
20afba5cc3e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5061
diff changeset
  1880
startTutorial
20afba5cc3e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5061
diff changeset
  1881
    "open an HTML browser on the 'getstart/tutorial.html' document"
20afba5cc3e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5061
diff changeset
  1882
20afba5cc3e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5061
diff changeset
  1883
    self showDocumentation:'getstart/tutorial.html'
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
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1886
startWhatsNewDocumentation
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1887
    "open an HTML browser on the 'whatsNew.html' document"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1888
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1889
    self showDocumentation:'whatsNew.html'
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1890
2296
cb2a81a506ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2294
diff changeset
  1891
!
cb2a81a506ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2294
diff changeset
  1892
cb2a81a506ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2294
diff changeset
  1893
startWhatsNewSTX
cb2a81a506ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2294
diff changeset
  1894
    "open an HTML browser on the 'relNotes.html' document"
cb2a81a506ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2294
diff changeset
  1895
cb2a81a506ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2294
diff changeset
  1896
    self showDocumentation:'newFeatures.html'
cb2a81a506ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2294
diff changeset
  1897
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1898
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1899
4862
1838e1e01c92 method category rename
Claus Gittinger <cg@exept.de>
parents: 4859
diff changeset
  1900
!AbstractLauncherApplication methodsFor:'user actions-system'!
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1901
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1902
compressingGarbageCollect
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1903
    "perform a compressing garbageCollect"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1904
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1905
    self withWaitCursorDo:[ObjectMemory verboseGarbageCollect]
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
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1908
7899
f33a16fa5301 New menu entry to reload the resource files
Stefan Vogel <sv@exept.de>
parents: 7882
diff changeset
  1909
flushCachedResources
f33a16fa5301 New menu entry to reload the resource files
Stefan Vogel <sv@exept.de>
parents: 7882
diff changeset
  1910
    "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
  1911
f33a16fa5301 New menu entry to reload the resource files
Stefan Vogel <sv@exept.de>
parents: 7882
diff changeset
  1912
    Smalltalk changed:#Language.  "this flushes everything"
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
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1915
garbageCollect
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1916
    "perform a non-compressing garbageCollect"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1917
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1918
    self withWaitCursorDo:[ObjectMemory reclaimSymbols]
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
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1921
7929
04fe3c979a94 changed #objectModuleDialog - fix method category
Stefan Vogel <sv@exept.de>
parents: 7899
diff changeset
  1922
objectModuleDialog
04fe3c979a94 changed #objectModuleDialog - fix method category
Stefan Vogel <sv@exept.de>
parents: 7899
diff changeset
  1923
    "opens a moduleInfo dialog"
04fe3c979a94 changed #objectModuleDialog - fix method category
Stefan Vogel <sv@exept.de>
parents: 7899
diff changeset
  1924
7945
50d6071ecb8d changed #objectModuleDialog
Claus Gittinger <cg@exept.de>
parents: 7929
diff changeset
  1925
    Tools::ObjectModuleInformation notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1926
        self openApplication:#'Tools::ObjectModuleInformation'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1927
        ^ self.
7945
50d6071ecb8d changed #objectModuleDialog
Claus Gittinger <cg@exept.de>
parents: 7929
diff changeset
  1928
    ].
50d6071ecb8d changed #objectModuleDialog
Claus Gittinger <cg@exept.de>
parents: 7929
diff changeset
  1929
7929
04fe3c979a94 changed #objectModuleDialog - fix method category
Stefan Vogel <sv@exept.de>
parents: 7899
diff changeset
  1930
    ^ LauncherDialogs objectModuleDialog
04fe3c979a94 changed #objectModuleDialog - fix method category
Stefan Vogel <sv@exept.de>
parents: 7899
diff changeset
  1931
04fe3c979a94 changed #objectModuleDialog - fix method category
Stefan Vogel <sv@exept.de>
parents: 7899
diff changeset
  1932
    "Modified: / 31.7.1998 / 17:33:24 / cg"
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
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1935
startStopEventTrace
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1936
    "start/stop event tracing for a particular view"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1937
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1938
    |v wg|
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 := Screen current viewFromUser.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1941
    v notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1942
        v := v topView.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1943
        wg := v windowGroup.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1944
        wg notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1945
            "/
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1946
            "/ toggle eventTrace in its windowGroup
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
            wg traceEvents:(wg traceEvents not)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1949
        ]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1950
    ]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1951
! !
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1952
4862
1838e1e01c92 method category rename
Claus Gittinger <cg@exept.de>
parents: 4859
diff changeset
  1953
!AbstractLauncherApplication methodsFor:'user actions-tools'!
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1954
2210
efe47610b7ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2209
diff changeset
  1955
inspectGlobalVariables
efe47610b7ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2209
diff changeset
  1956
    "inspect globals"
efe47610b7ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2209
diff changeset
  1957
9084
3b0b89c91c71 changed:
Claus Gittinger <cg@exept.de>
parents: 9052
diff changeset
  1958
    WorkspaceApplication notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1959
        "/ looks nicer...
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1960
        WorkspaceApplication openWithGlobalsInspector.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1961
        ^ self.
9084
3b0b89c91c71 changed:
Claus Gittinger <cg@exept.de>
parents: 9052
diff changeset
  1962
    ].
2210
efe47610b7ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2209
diff changeset
  1963
    Smalltalk inspect
efe47610b7ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2209
diff changeset
  1964
!
efe47610b7ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2209
diff changeset
  1965
2207
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  1966
inspectWorkspaceVariables
2210
efe47610b7ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2209
diff changeset
  1967
    "inspect workspace variables"
2207
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  1968
9084
3b0b89c91c71 changed:
Claus Gittinger <cg@exept.de>
parents: 9052
diff changeset
  1969
    WorkspaceApplication notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1970
        "/ looks nicer...
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1971
        WorkspaceApplication openWithWorkspaceVariableInspector.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1972
        ^ self.
9084
3b0b89c91c71 changed:
Claus Gittinger <cg@exept.de>
parents: 9052
diff changeset
  1973
    ].
3b0b89c91c71 changed:
Claus Gittinger <cg@exept.de>
parents: 9052
diff changeset
  1974
    "/ Workspace workspaceVariables inspect
2207
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  1975
!
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  1976
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1977
newProject
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1978
    "creates a new project & opens a projectView for it"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1979
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1980
    Project notNil ifTrue: [(ProjectView for: Project new) open]
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
8290
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  1983
openEvaluationWorkspace
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  1984
    WorkspaceApplication notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1985
        ^ WorkspaceApplication openEvaluationWorkspace
8290
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  1986
    ].
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  1987
    ^ self openApplication:Workspace
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
8319
d2f8c4cafb80 +openMyWorkspace
Claus Gittinger <cg@exept.de>
parents: 8314
diff changeset
  1990
openMyWorkspace
d2f8c4cafb80 +openMyWorkspace
Claus Gittinger <cg@exept.de>
parents: 8314
diff changeset
  1991
    WorkspaceApplication notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1992
        ^ WorkspaceApplication openMyWorkspace
8319
d2f8c4cafb80 +openMyWorkspace
Claus Gittinger <cg@exept.de>
parents: 8314
diff changeset
  1993
    ].
d2f8c4cafb80 +openMyWorkspace
Claus Gittinger <cg@exept.de>
parents: 8314
diff changeset
  1994
    ^ self openApplication:Workspace
d2f8c4cafb80 +openMyWorkspace
Claus Gittinger <cg@exept.de>
parents: 8314
diff changeset
  1995
!
d2f8c4cafb80 +openMyWorkspace
Claus Gittinger <cg@exept.de>
parents: 8314
diff changeset
  1996
15236
92e7ef5d694e class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14943
diff changeset
  1997
openRegularWorkspace
92e7ef5d694e class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14943
diff changeset
  1998
    WorkspaceApplication notNil ifTrue:[
92e7ef5d694e class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14943
diff changeset
  1999
        ^ WorkspaceApplication openRegularWorkspace
92e7ef5d694e class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14943
diff changeset
  2000
    ].
92e7ef5d694e class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14943
diff changeset
  2001
    ^ self openApplication:Workspace
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
8290
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  2004
openSystemWorkspace
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  2005
    WorkspaceApplication notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2006
        ^ WorkspaceApplication openSystemWorkspace
8290
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  2007
    ].
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  2008
    ^ self openApplication:Workspace
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
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2011
openTerminal
5298
578f2afad9da terminal application
Claus Gittinger <cg@exept.de>
parents: 5277
diff changeset
  2012
    TerminalApplication notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2013
        ^ TerminalApplication open
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2014
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2015
    self openApplication:#VT100TerminalView
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2016
!
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2017
15275
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2018
openTextDiffTool
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2019
    Tools::TextDiff2Tool isNil ifTrue:[
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2020
        Dialog warn:'Tools::TextDiff2Tool is missing'.
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2021
        ^ self        
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2022
    ].
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2023
    ^Tools::TextDiff2Tool 
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2024
        openOn:'Paste some text here' label:'text1'
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2025
        and:'Paste the other text text here' label:'text2'
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2026
!
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2027
3158
70963eea944a new workspace
Claus Gittinger <cg@exept.de>
parents: 3140
diff changeset
  2028
openWorkspace
70963eea944a new workspace
Claus Gittinger <cg@exept.de>
parents: 3140
diff changeset
  2029
    WorkspaceApplication notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2030
        ^ WorkspaceApplication open
3158
70963eea944a new workspace
Claus Gittinger <cg@exept.de>
parents: 3140
diff changeset
  2031
    ].
70963eea944a new workspace
Claus Gittinger <cg@exept.de>
parents: 3140
diff changeset
  2032
    ^ self openApplication:Workspace
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
2207
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  2035
removeAllWorkspaceVariables
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  2036
    "remove workspace variables"
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  2037
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  2038
    Workspace removeAllWorkspaceVariables
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
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2041
selectProject
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2042
    "asks for and switch to another project"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2043
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2044
    |list box|
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
    Project notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2047
        list := Project allInstances.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2048
        box := ListSelectionBox new.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2049
        box list:(list collect:[:p | p name]).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2050
        box title:(resources string:'Select a project').
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2051
        box action:[:selection |
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2052
            |project|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2053
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2054
            project := list detect:[:p | p name = selection] ifNone:[nil].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2055
            project isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2056
                transcript notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2057
                    transcript showCR:'No such project.'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2058
                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2059
            ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2060
                project showViews.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2061
                Project current:project
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2062
            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2063
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2064
        box open.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2065
        box destroy
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2066
    ]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2067
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2068
3408
12215beef308 new Icon in NewLauncher for Bug messages
penk
parents: 3401
diff changeset
  2069
startBugMessages
8643
e69b9268f450 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8625
diff changeset
  2070
    "open the bug reporter"
e69b9268f450 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8625
diff changeset
  2071
e69b9268f450 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8625
diff changeset
  2072
    Expecco::ExpeccoNetAPI notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2073
        Expecco::ExpeccoNetAPI reportCodeReview.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2074
        ^ self
8643
e69b9268f450 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8625
diff changeset
  2075
    ].
e69b9268f450 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8625
diff changeset
  2076
e69b9268f450 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8625
diff changeset
  2077
    BugGUI notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2078
        self openApplication:#BugGUI
8643
e69b9268f450 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8625
diff changeset
  2079
    ].
3408
12215beef308 new Icon in NewLauncher for Bug messages
penk
parents: 3401
diff changeset
  2080
12215beef308 new Icon in NewLauncher for Bug messages
penk
parents: 3401
diff changeset
  2081
    "Modified: / 17.10.1998 / 14:38:18 / cg"
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
3362
e02cc20dd18f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3326
diff changeset
  2084
startChangeSetBrowser
15699
292b370e5431 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15506
diff changeset
  2085
    "open a change Set Browser on the changes in the system"
292b370e5431 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15506
diff changeset
  2086
292b370e5431 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15506
diff changeset
  2087
    ^ 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
  2088
af054eb73ccf Fix in AbstractLauncherApplication>>startChangeSetBrowser: use preferred changeset browser
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15495
diff changeset
  2089
    "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
  2090
    "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
  2091
!
e02cc20dd18f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3326
diff changeset
  2092
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2093
startChangesBrowser
15700
b938df38917c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15699
diff changeset
  2094
    "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
  2095
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2096
    self openApplication:(UserPreferences current changesBrowserClass)
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
    "Modified: / 17.10.1998 / 14:38:18 / cg"
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
8298
644a1568da1f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8290
diff changeset
  2101
startInternationalLanguageTranslationEditor
644a1568da1f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8290
diff changeset
  2102
    "open the language-string editor (english/german/spanish etc.)"
644a1568da1f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8290
diff changeset
  2103
644a1568da1f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8290
diff changeset
  2104
    self openApplication:#'Tools::InternationalLanguageTranslationEditor'
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
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2107
startNewChangesBrowser
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2108
    "opens the new changeBrowser"
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2109
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2110
    self openApplication:#NewChangesBrowser
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
    "Created: / 6.6.1998 / 19:47:26 / cg"
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
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2115
startNewLauncher
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2116
    "opens the new launcher"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2117
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2118
    NewLauncher isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2119
        ^ 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
  2120
    ].
14075
710990d62d23 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13950
diff changeset
  2121
    Display withoutExitingOnLastCloseDo:[
710990d62d23 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13950
diff changeset
  2122
        NewLauncher openAt:(self window origin)
710990d62d23 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13950
diff changeset
  2123
    ].
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2124
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2125
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2126
startOldChangesBrowser
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2127
    "opens the old changeBrowser"
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2128
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2129
    self openApplication:#ChangesBrowser
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
    "Created: / 6.6.1998 / 19:47:26 / cg"
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
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2134
startOldLauncher
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2135
    "opens the old launcher"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2136
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2137
    Launcher isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2138
        ^ 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
  2139
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2140
    Launcher openAt:(self window origin)
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2141
2883
bd88b8b95b29 SUNit stuff added
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  2142
!
bd88b8b95b29 SUNit stuff added
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  2143
bd88b8b95b29 SUNit stuff added
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  2144
startSUnitTestRunner
11990
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  2145
    "open the configured SUnit test runner"
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  2146
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  2147
    self openApplication:(UserPreferences current testRunnerClass)
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  2148
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  2149
    "Modified: / 17.10.1998 / 14:38:18 / cg"
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  2150
!
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  2151
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  2152
startSUnitTestRunner1
2883
bd88b8b95b29 SUNit stuff added
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  2153
    "open the SUnit test runner"
bd88b8b95b29 SUNit stuff added
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  2154
3037
0d452d54bf04 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3035
diff changeset
  2155
    self openApplication:#TestRunner
2883
bd88b8b95b29 SUNit stuff added
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  2156
bd88b8b95b29 SUNit stuff added
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  2157
    "Modified: / 17.10.1998 / 14:38:18 / cg"
5016
8c5784f76fa3 SmaCCParsergenerator
Claus Gittinger <cg@exept.de>
parents: 4936
diff changeset
  2158
!
8c5784f76fa3 SmaCCParsergenerator
Claus Gittinger <cg@exept.de>
parents: 4936
diff changeset
  2159
8c5784f76fa3 SmaCCParsergenerator
Claus Gittinger <cg@exept.de>
parents: 4936
diff changeset
  2160
startSmaCCParserGenerator
8c5784f76fa3 SmaCCParsergenerator
Claus Gittinger <cg@exept.de>
parents: 4936
diff changeset
  2161
    "open the SmaCC-ParserGenerator UI"
8c5784f76fa3 SmaCCParsergenerator
Claus Gittinger <cg@exept.de>
parents: 4936
diff changeset
  2162
8c5784f76fa3 SmaCCParsergenerator
Claus Gittinger <cg@exept.de>
parents: 4936
diff changeset
  2163
    self openApplication:#'SmaCC::SmaCCParserGenerator'
8c5784f76fa3 SmaCCParsergenerator
Claus Gittinger <cg@exept.de>
parents: 4936
diff changeset
  2164
8c5784f76fa3 SmaCCParsergenerator
Claus Gittinger <cg@exept.de>
parents: 4936
diff changeset
  2165
    "Modified: / 17.10.1998 / 14:38:18 / cg"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2166
! !
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2167
4862
1838e1e01c92 method category rename
Claus Gittinger <cg@exept.de>
parents: 4859
diff changeset
  2168
!AbstractLauncherApplication methodsFor:'user actions-windows'!
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2169
12067
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2170
allTopViewsDo:aBlock
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2171
    |setOfViews currentScreen|
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2172
13882
212877cb97bf merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13761
diff changeset
  2173
    setOfViews := Project current views asIdentitySet.
12067
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2174
    setOfViews addAll:(Project defaultProject views).
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2175
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2176
    currentScreen := Screen current.
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2177
    setOfViews do:[:eachTopView |
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2178
        eachTopView device == currentScreen ifTrue:[
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2179
            aBlock value:eachTopView
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2180
        ]
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2181
    ]
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
2765
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2184
askForAnotherDisplay
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2185
    "ask for some other display"
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2186
3664
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  2187
    |displayName|
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  2188
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  2189
    displayName := Dialog request:'Display:' initialAnswer:(Screen default displayName).
6264
039dc5c1710b slight code cleanup
Claus Gittinger <cg@exept.de>
parents: 6233
diff changeset
  2190
    displayName isEmptyOrNil ifTrue:[^ nil].
3664
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  2191
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  2192
    ^ XWorkstation newDispatchingFor:displayName.
2765
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2193
!
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2194
13654
e33fa0be5522 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13637
diff changeset
  2195
bringAllWindowsOntoScreen
e33fa0be5522 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13637
diff changeset
  2196
    self allTopViewsDo:[:eachTopView | self bringWindowOntoScreen:eachTopView]
e33fa0be5522 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13637
diff changeset
  2197
e33fa0be5522 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13637
diff changeset
  2198
    "
e33fa0be5522 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13637
diff changeset
  2199
     Transcript topView application bringAllWindowsOntoScreen
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
!
e33fa0be5522 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13637
diff changeset
  2202
16114
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2203
bringWindow:aWindow intoBounds:bounds
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2204
    "shift & resize a view to be completely inside bounds."
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2205
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2206
    |topView oldOrg newOrg oldCorner newCorner delta|
16114
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 := aWindow topView.
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2209
    oldOrg := newOrg := topView origin.
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2210
    oldCorner := newCorner := topView corner. 
16114
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2211
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2212
    (bounds containsPoint:oldOrg) ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2213
        newOrg := bounds origin + (10@10).
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2214
        delta := newOrg - oldOrg.
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2215
        newCorner := oldCorner + delta.
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2216
    ].    
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2217
    (bounds containsPoint:newCorner) ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2218
        newCorner := bounds corner - (10@10).
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2219
        delta := newCorner - oldCorner.
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2220
        newOrg = oldOrg ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2221
            newOrg := newOrg + delta.
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2222
            (bounds containsPoint:newOrg) ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2223
                newOrg := bounds origin + (10@10).
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2224
            ].
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2225
        ].
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2226
    ].
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2227
    topView 
16114
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2228
        raiseDeiconified;
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2229
        origin:newOrg corner:newCorner.
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2230
!
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2231
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2232
bringWindowOntoScreen:aWindow 
16114
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2233
    "shift & resize a view to be visible.
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2234
     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
  2235
    
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2236
    |allBounds bounds myDevice|
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
    myDevice := self device.
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2239
    allBounds := myDevice monitorBoundsAt:aWindow center.
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2240
    allBounds notEmptyOrNil ifTrue:[
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2241
        bounds := allBounds 
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2242
                detect:[:bounds | bounds containsPoint:self window center ]
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2243
                ifNone:[ nil ].
16114
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2244
    ].
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2245
    bounds isNil ifTrue:[
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2246
        bounds := 0@0 extent:myDevice usableExtent.
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2247
    ].
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2248
    self bringWindow:aWindow intoBounds:bounds
12568
e992401c1f07 bring window onto screen
Claus Gittinger <cg@exept.de>
parents: 12500
diff changeset
  2249
!
e992401c1f07 bring window onto screen
Claus Gittinger <cg@exept.de>
parents: 12500
diff changeset
  2250
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2251
deIconifyAllWindows
13696
94a519c56f57 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13654
diff changeset
  2252
    self allTopViewsDo:[:eachTopView | eachTopView expand; raise].
94a519c56f57 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13654
diff changeset
  2253
    self window raise.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2254
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2255
    "
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2256
     Transcript topView application deIconifyAllWindows
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
!
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
findAndDestroyWindow
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2261
    "find a window (by name) and destroy it"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2262
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2263
    |v|
4412
710b2097c588 dialog strings
Claus Gittinger <cg@exept.de>
parents: 4399
diff changeset
  2264
    v := self findWindow:'Select window to close:'.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2265
    v notNil ifTrue:[v destroy]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2266
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2267
2759
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2268
findAndMigrateWindow
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2269
    "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
  2270
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2271
    |possibleGroups v|
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2272
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2273
    possibleGroups := WindowGroup allInstances select:[:eachGroup |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2274
                                        eachGroup graphicsDevice == Screen current
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2275
                                        and:[eachGroup isModal not
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2276
                                        and:[eachGroup topViews size > 0]]].
6264
039dc5c1710b slight code cleanup
Claus Gittinger <cg@exept.de>
parents: 6233
diff changeset
  2277
    possibleGroups isEmpty ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2278
        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
  2279
        ^ self
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2280
    ].
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2281
4412
710b2097c588 dialog strings
Claus Gittinger <cg@exept.de>
parents: 4399
diff changeset
  2282
    v := self findWindow:'Select window to migrate:' windowGroupFilter:possibleGroups.
2759
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2283
    v notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2284
        self migrateWindow:v topView
2759
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2285
    ]
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2286
!
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2287
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2288
findAndMigrateWindowBack
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2289
    "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
  2290
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2291
    |possibleGroups v|
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 := WindowGroup allInstances select:[:eachGroup |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2294
                                        eachGroup graphicsDevice ~~ Screen current
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2295
                                        and:[eachGroup isModal not
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2296
                                        and:[eachGroup topViews size > 0]]].
6264
039dc5c1710b slight code cleanup
Claus Gittinger <cg@exept.de>
parents: 6233
diff changeset
  2297
    possibleGroups isEmpty ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2298
        self information:'No windows are open on any other display.'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2299
        ^ self
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2300
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2301
4412
710b2097c588 dialog strings
Claus Gittinger <cg@exept.de>
parents: 4399
diff changeset
  2302
    v := self findWindow:'Select window to migrate back:' windowGroupFilter:possibleGroups.
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2303
    v notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2304
        v windowGroup migrateTo:(Screen current)
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2305
    ]
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2306
!
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2307
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2308
findAndRaiseWindow
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2309
    "find a window (by name) and raise it"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2310
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2311
    |v|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2312
4412
710b2097c588 dialog strings
Claus Gittinger <cg@exept.de>
parents: 4399
diff changeset
  2313
    v := self findWindow:'Select window to raise deiconified:'.
11417
3559223419d9 changed: #findAndRaiseWindow
Stefan Vogel <sv@exept.de>
parents: 11355
diff changeset
  2314
    v notNil ifTrue:[v raiseDeiconified; setForegroundWindow]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2315
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2316
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2317
fullScreenHardcopy
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2318
    "after a second (to allow redraw of views under menu ...),
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2319
     save the contents of the whole screen."
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2320
    
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2321
    |mySensor|
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 := self window sensor.
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2324
    mySensor ctrlDown ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2325
        ^ self fullScreenHardcopyUngrabbed
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2326
    ].
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2327
    Processor 
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2328
        addTimedBlock:[ self saveScreenImage:(Image fromScreen) defaultName:'screen' ]
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2329
        afterSeconds:(mySensor shiftDown ifTrue:5 ifFalse:1)
3326
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  2330
!
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  2331
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  2332
fullScreenHardcopyUngrabbed
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  2333
    "after a second (to allow redraw of views under menu ...),
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  2334
     save the contents of the whole screen."
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  2335
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2336
    Processor
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2337
        addTimedBlock:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2338
                        |display image|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2339
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2340
                        display := Screen current.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2341
                        image := Image
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2342
                            fromScreen:(0@0 corner:(display extent))
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2343
                            on:display
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2344
                            grab:false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2345
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2346
                        self
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2347
                            saveScreenImage:image
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2348
                            defaultName:'screen'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2349
                      ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2350
        afterSeconds:(self window sensor shiftDown ifTrue:5 ifFalse:1)
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2351
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2352
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2353
hardcopyOfView: aView
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2354
    "after a second (to allow redraw of views under menu ...),
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2355
     save a view's contents as bitmap image."
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2356
12500
5e05cf44bd94 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12499
diff changeset
  2357
    |top|
5e05cf44bd94 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12499
diff changeset
  2358
5e05cf44bd94 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12499
diff changeset
  2359
    top := aView topView.
5e05cf44bd94 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12499
diff changeset
  2360
    top raiseDeiconified; makeFullyVisible.
5e05cf44bd94 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12499
diff changeset
  2361
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2362
    "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
  2363
    self enqueueDelayedAction:[
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2364
        Delay waitForSeconds:1.   "/ give view a chance to redraw itself.
12500
5e05cf44bd94 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12499
diff changeset
  2365
        self saveScreenImage:(Image fromView:top) defaultName:'hardcopy'
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2366
    ].
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2367
    aView windowGroup processExposeEvents
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
    "Created: / 27-04-2012 / 13:23:40 / cg"
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
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2372
iconifyAllWindows
12067
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2373
    self allTopViewsDo:[:eachTopView | eachTopView collapse]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2374
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2375
2765
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2376
migrateAllWindows
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2377
    "migrate all views to some other display"
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2378
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2379
    |anotherDisplay toMigrate|
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2380
3664
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  2381
    [
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2382
        anotherDisplay := self askForAnotherDisplay.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2383
        anotherDisplay isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2384
            ^ self.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2385
        ].
3664
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  2386
    ] on:Screen deviceOpenErrorSignal do:[:ex|
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2387
        ^ self warn:'Cannot open display: ', ex parameter.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2388
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2389
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2390
    toMigrate := WindowGroup allInstances
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2391
        select:[:each | each graphicsDevice == Screen current
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2392
                        and:[each topViews size > 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2393
                        and:[each isModal not]]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2394
               ].
2765
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2395
    toMigrate do:[:eachGroup |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2396
        eachGroup migrateTo:anotherDisplay
2765
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2397
    ]
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2398
!
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2399
2759
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2400
migrateWindow:aWindow
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2401
    "migrate a view to some other display"
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2402
16747
7e55266044ea #BUGFIX by stefan
Stefan Vogel <sv@exept.de>
parents: 16687
diff changeset
  2403
    aWindow isModal ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2404
        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
  2405
        ^ self
2778
1e4bf8bf1d37 block migration of a modalBox
Claus Gittinger <cg@exept.de>
parents: 2775
diff changeset
  2406
    ].
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2407
    self 
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2408
        migrateWindow:aWindow 
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2409
        withBackOption:(self confirm:'Show ''Return Back'' Button on the other display ?')
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2410
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2411
    "Modified (format): / 27-04-2012 / 13:15:23 / cg"
2775
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2412
!
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2413
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2414
migrateWindow:aWindow withBackOption:withBackOption
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2415
    "migrate a view to some other display"
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2416
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2417
    |anotherDisplay wg here b|
2765
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2418
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2419
    aWindow isTopView ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2420
        self information:'Cannot migrate this window'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2421
        ^ self
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2422
    ].
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2423
3664
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  2424
    [
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2425
        anotherDisplay := self askForAnotherDisplay.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2426
        anotherDisplay isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2427
            ^ self.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2428
        ].
3664
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  2429
    ] on:Screen deviceOpenErrorSignal do:[:ex|
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2430
        ^ self warn:'Cannot open display: ', ex parameter.
2759
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2431
    ].
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2432
2775
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2433
    wg := aWindow windowGroup.
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2434
    wg migrateTo:anotherDisplay.
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2435
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2436
    withBackOption ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2437
        here := Screen current.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2438
        b := Button onDevice:anotherDisplay.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2439
        b label:'Return window back to ' , here displayName.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2440
        b action:[ wg migrateTo:here. b destroy. ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2441
        b origin:0@0.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2442
        b open.
2775
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2443
    ].
2759
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2444
!
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2445
9364
be7f9957ef94 added: #openWindowTreeInspector
Claus Gittinger <cg@exept.de>
parents: 9330
diff changeset
  2446
openWindowTreeInspector
9932
f6d155d70650 changed: #openWindowTreeInspector
Claus Gittinger <cg@exept.de>
parents: 9875
diff changeset
  2447
    Tools::ViewTreeInspectorApplication isNil ifTrue:[
f6d155d70650 changed: #openWindowTreeInspector
Claus Gittinger <cg@exept.de>
parents: 9875
diff changeset
  2448
        Dialog warn:'Missing class: Tools::ViewTreeInspectorApplication'.
f6d155d70650 changed: #openWindowTreeInspector
Claus Gittinger <cg@exept.de>
parents: 9875
diff changeset
  2449
        ^ self.
f6d155d70650 changed: #openWindowTreeInspector
Claus Gittinger <cg@exept.de>
parents: 9875
diff changeset
  2450
    ].
14459
8bf63fa9cd85 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14445
diff changeset
  2451
    Tools::ViewTreeInspectorApplication openInPickModeAndRelease
9932
f6d155d70650 changed: #openWindowTreeInspector
Claus Gittinger <cg@exept.de>
parents: 9875
diff changeset
  2452
f6d155d70650 changed: #openWindowTreeInspector
Claus Gittinger <cg@exept.de>
parents: 9875
diff changeset
  2453
    "Modified: / 12-05-2011 / 10:15:39 / cg"
9364
be7f9957ef94 added: #openWindowTreeInspector
Claus Gittinger <cg@exept.de>
parents: 9330
diff changeset
  2454
!
be7f9957ef94 added: #openWindowTreeInspector
Claus Gittinger <cg@exept.de>
parents: 9330
diff changeset
  2455
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2456
screenHardcopy
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2457
    "after a second (to allow redraw of views under menu ...),
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2458
     let user specify a rectangular area on the screen
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2459
     and save its contents."
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2460
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2461
    Processor
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2462
        addTimedBlock:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2463
                        |area|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2464
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2465
                        [Screen current leftButtonPressed] whileTrue:[Delay waitForSeconds:0.05].
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
                        area := Rectangle fromUser.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2468
                        (area width > 0 and:[area height > 0]) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2469
                            Delay waitForSeconds:2.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2470
                            self saveScreenImage:(Image fromScreen:area) defaultName:'hardcopy'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2471
                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2472
                      ]
15367
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2473
        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
  2474
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2475
    "Modified: / 18.8.1998 / 15:00:42 / cg"
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
6069
6b2903a57572 edit-button in screen-area abzug
Claus Gittinger <cg@exept.de>
parents: 6040
diff changeset
  2478
screenHardcopyWithDelay
6b2903a57572 edit-button in screen-area abzug
Claus Gittinger <cg@exept.de>
parents: 6040
diff changeset
  2479
    "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
  2480
     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
  2481
     and save its contents."
6b2903a57572 edit-button in screen-area abzug
Claus Gittinger <cg@exept.de>
parents: 6040
diff changeset
  2482
8385
635607a0dcc4 changed #screenHardcopyWithDelay
Claus Gittinger <cg@exept.de>
parents: 8381
diff changeset
  2483
    |area|
635607a0dcc4 changed #screenHardcopyWithDelay
Claus Gittinger <cg@exept.de>
parents: 8381
diff changeset
  2484
635607a0dcc4 changed #screenHardcopyWithDelay
Claus Gittinger <cg@exept.de>
parents: 8381
diff changeset
  2485
    [Screen current leftButtonPressed] whileTrue:[Delay waitForSeconds:0.05].
635607a0dcc4 changed #screenHardcopyWithDelay
Claus Gittinger <cg@exept.de>
parents: 8381
diff changeset
  2486
15367
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2487
    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
  2488
    area := Rectangle fromUser.
635607a0dcc4 changed #screenHardcopyWithDelay
Claus Gittinger <cg@exept.de>
parents: 8381
diff changeset
  2489
    (area width > 0 and:[area height > 0]) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2490
        [
15367
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2491
            |oldLabel|
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2492
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2493
            oldLabel := self window label.
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2494
            10 to:4 by:-1 do:[:secs |
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2495
                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
  2496
                Screen current beep. 
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2497
                Delay waitForSeconds:1. 
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2498
            ].
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2499
            3 to:1 by:-1 do:[:secs |
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2500
                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
  2501
                Screen current beep. 
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2502
                Delay waitForSeconds:0.5. 
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
            ].        
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2506
            self window label:oldLabel.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2507
            self saveScreenImage:(Image fromScreen:area) defaultName:'hardcopy'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2508
        ] fork
8385
635607a0dcc4 changed #screenHardcopyWithDelay
Claus Gittinger <cg@exept.de>
parents: 8381
diff changeset
  2509
    ]
6069
6b2903a57572 edit-button in screen-area abzug
Claus Gittinger <cg@exept.de>
parents: 6040
diff changeset
  2510
!
6b2903a57572 edit-button in screen-area abzug
Claus Gittinger <cg@exept.de>
parents: 6040
diff changeset
  2511
7977
c58175dd1ceb flyByWindowInfo
Claus Gittinger <cg@exept.de>
parents: 7945
diff changeset
  2512
showFlyByWindowInformation
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2513
    "show infos about window under the mouse pointer"
7977
c58175dd1ceb flyByWindowInfo
Claus Gittinger <cg@exept.de>
parents: 7945
diff changeset
  2514
7980
9da97ea4f99d changed #showFlyByWindowInformation
Claus Gittinger <cg@exept.de>
parents: 7977
diff changeset
  2515
    FlyByWindowInformation notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2516
        [
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2517
            FlyByWindowInformation shownInformationOfViewUnderMouseUntilButtonIsPressed
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2518
        ] fork.
7980
9da97ea4f99d changed #showFlyByWindowInformation
Claus Gittinger <cg@exept.de>
parents: 7977
diff changeset
  2519
    ]
7977
c58175dd1ceb flyByWindowInfo
Claus Gittinger <cg@exept.de>
parents: 7945
diff changeset
  2520
!
c58175dd1ceb flyByWindowInfo
Claus Gittinger <cg@exept.de>
parents: 7945
diff changeset
  2521
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2522
startWindowTreeView
2371
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  2523
    "open a windowTree (on a picked topView)"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2524
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2525
    |v|
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
    WindowTreeView isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2528
        ^ 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
  2529
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2530
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2531
    v := self pickAView.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2532
    v notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2533
        WindowTreeView openOn:v topView
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2534
    ]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2535
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
2371
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  2538
startWindowTreeViewForAll
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  2539
    "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
  2540
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  2541
    WindowTreeView isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2542
        ^ 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
  2543
    ].
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  2544
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  2545
    WindowTreeView openOnAll
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
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2548
viewBrowse
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2549
    "let user pick a view and browse its Application class. 
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2550
     Of course, only smalltalk views are allowed"
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2551
14238
fb35cdfdc677 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14183
diff changeset
  2552
    |v app appClass browser|
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2553
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2554
    (v := self pickAView) notNil ifTrue:[
14238
fb35cdfdc677 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14183
diff changeset
  2555
        browser := UserPreferences browserClass.
fb35cdfdc677 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14183
diff changeset
  2556
        (app := v application) notNil ifTrue:[
fb35cdfdc677 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14183
diff changeset
  2557
            appClass := app class theMetaclass.
fb35cdfdc677 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14183
diff changeset
  2558
            (appClass includesSelector:#windowSpec) ifTrue:[
fb35cdfdc677 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14183
diff changeset
  2559
                browser openInMethod:(appClass compiledMethodAt:#windowSpec)
fb35cdfdc677 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14183
diff changeset
  2560
            ]
fb35cdfdc677 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14183
diff changeset
  2561
        ] ifFalse:[
fb35cdfdc677 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14183
diff changeset
  2562
            (app ? v) browse
fb35cdfdc677 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14183
diff changeset
  2563
        ]
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2564
    ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2565
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2566
    "Created: / 30-06-2011 / 22:59:03 / cg"
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
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2569
viewDestroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2570
    "let user pick a view and destroy it.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2571
     Even allow destroying non-smalltalk views
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2572
     (also for views which I forgot due to some error)"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2573
9805
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2574
    |screen v id i c|
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2575
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2576
    Delay waitForSeconds:1.
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
    i := self class cross2Icon.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2579
    i isNil ifTrue:[
9805
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2580
        c := Cursor crossHair
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2581
    ] ifFalse:[
9805
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2582
        c := Cursor fromImage:i
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2583
    ].
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2584
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2585
    screen := Screen current.
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2586
    id := screen viewIdFromPoint:(screen pointFromUserShowing:c).
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2587
    (v := screen viewFromId:id) notNil ifTrue:[
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2588
        v topView destroy.
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2589
        ^ self
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2590
    ].
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2591
    id = screen rootView id ifTrue:[
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2592
        ^ self
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2593
    ].
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2594
    (Dialog confirm:'This may not a be smalltalk view\(or I somehow forgot about it).\Destroy anyway ?' withCRs)
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2595
    ifTrue:[
9805
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2596
        screen destroyView:nil withId:id
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2597
    ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2598
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2599
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2600
viewHardcopy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2601
    "after a second (to allow redraw of views under menu ...),
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2602
     let user specify a view and save its contents."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2603
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2604
    Processor
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2605
        addTimedBlock:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2606
                        |v|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2607
                        (v := Screen current viewFromUser) notNil ifTrue:[
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2608
                            self hardcopyOfView: v
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2609
                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2610
                      ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2611
        afterSeconds:(self window sensor shiftDown ifTrue:5 ifFalse:1)
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2612
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2613
    "Modified: / 27-04-2012 / 13:24:23 / cg"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2614
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2615
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2616
viewInspect
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2617
    "let user pick a view and inspect it. 
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2618
     Of course, only smalltalk views are allowed"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2619
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2620
    |v|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2621
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2622
    (v := self pickAView) notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2623
        v inspect
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2624
    ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2625
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2626
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2627
viewMigrate
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2628
    "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
  2629
     Only smalltalk views are allowed"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2630
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2631
    |v|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2632
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2633
    (v := self pickAView) notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2634
        self migrateWindow:v topView
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2635
    ]
6032
c9ff68a79be2 Move #widgetHardcopy from NewLauncher to AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 6019
diff changeset
  2636
!
c9ff68a79be2 Move #widgetHardcopy from NewLauncher to AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 6019
diff changeset
  2637
14571
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2638
viewSelectAndShrink
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2639
    "let user pick a view and shrink it to a reasonable size
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2640
     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
  2641
     which have their resize handle hidden or unreachable."
14571
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2642
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2643
    |v|
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 := self pickAView) notNil ifTrue:[
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2646
        v topView 
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2647
            origin:50@50 extent:200@200;
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2648
            raise
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2649
    ]
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2650
!
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2651
6032
c9ff68a79be2 Move #widgetHardcopy from NewLauncher to AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 6019
diff changeset
  2652
widgetHardcopy
c9ff68a79be2 Move #widgetHardcopy from NewLauncher to AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 6019
diff changeset
  2653
    "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
  2654
     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
  2655
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2656
    Processor
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2657
        addTimedBlock:
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2658
            [
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2659
                |v|
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2660
                (v := Screen current viewFromUser) notNil ifTrue:[
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2661
                    self saveScreenImage:(Image fromView:v) defaultName:'hardcopy'
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2662
                ]
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2663
            ]
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2664
        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
  2665
c9ff68a79be2 Move #widgetHardcopy from NewLauncher to AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 6019
diff changeset
  2666
    "Created: / 21.8.1998 / 20:44:12 / cg"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2667
! !
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2668
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2669
!AbstractLauncherApplication::LauncherDialogs class methodsFor:'dialogs'!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2670
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2671
communicationsSettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  2672
    "open a dialog on communications settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  2673
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2674
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2675
    |box check in resources y acceptChannel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2676
     hasRDoitServer rDoitServerPort
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2677
     rDoitsEnabled rDoitLogging rDoitErrorLogging rDoitErrorDebugging
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2678
     org_rDoitsEnabled org_rDoitLogging org_rDoitErrorLogging org_rDoitErrorDebugging org_rDoitServerPort
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2679
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2680
     hasRemoteBrowsingSupport remoteBrowsingEnabled org_remoteBrowsingEnabled
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2681
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2682
     hasWindowMigrationServer windowMigrationAuthenticate windowMigrationPassword
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2683
     windowMigrationEnabled
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2684
     org_windowMigrationEnabled org_windowMigrationAuthenticate org_windowMigrationPassword
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2685
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2686
     hasHTTPServer httpServerRunning httpServerFileRoot httpServerHomeURL
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2687
     httpServerPort httpServerLogFile hasSwiki swikiEnabled swikiRoot
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2688
     allowEmbedded hasSoap soapEnabled
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2689
     org_httpServerRunning org_httpServerFileRoot org_httpServerHomeURL
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2690
     org_httpServerPort org_swikiRoot org_swikiEnabled org_httpServerLogFile
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2691
     org_allowEmbedded org_soapEnabled
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2692
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2693
     osiACSEPresent osiROSEPresent osiCMISEPresent
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2694
     osiACSEErrorLogging osiACSEConnectionLogging osiACSEDataLogging
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2695
     osiROSEErrorLogging osiROSEResponseLogging osiROSEInvokationLogging
4872
b8ab742630af *** empty log message ***
penk
parents: 4863
diff changeset
  2696
     osiCMISEErrorLogging osiCMISEMessageLogging defaultServer
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2697
    |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2698
5048
99fed3febf6f instable state
penk
parents: 5033
diff changeset
  2699
    self warn:'Please use HTTPServer Settings in the new SettingsDialog'.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2700
    acceptChannel := false asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2701
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2702
    resources := self owningClass classResources.
4872
b8ab742630af *** empty log message ***
penk
parents: 4863
diff changeset
  2703
    defaultServer := HTTPServer defaultServer.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2704
    "/
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2705
    "/ extract relevant remoteBrowsing settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2706
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2707
    remoteBrowsingEnabled := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2708
    (hasRemoteBrowsingSupport := SmalltalkShareServer notNil) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2709
        SmalltalkShareServer isLoaded ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2710
            remoteBrowsingEnabled := SmalltalkShareServer serverRunning.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2711
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2712
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2713
    org_remoteBrowsingEnabled := remoteBrowsingEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2714
    remoteBrowsingEnabled := remoteBrowsingEnabled asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2715
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2716
    "/
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2717
    "/ extract relevant windowMigration settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2718
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2719
    windowMigrationEnabled := windowMigrationAuthenticate := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2720
    (hasWindowMigrationServer := WindowMigrationServer notNil) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2721
        WindowMigrationServer isLoaded ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2722
            windowMigrationEnabled := WindowMigrationServer serverRunning.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2723
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2724
        windowMigrationPassword := WindowMigrationServer password.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2725
        windowMigrationAuthenticate := windowMigrationPassword notNil.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2726
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2727
    org_windowMigrationEnabled := windowMigrationEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2728
    windowMigrationEnabled := windowMigrationEnabled asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2729
    org_windowMigrationAuthenticate := windowMigrationAuthenticate.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2730
    windowMigrationAuthenticate := windowMigrationAuthenticate asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2731
    org_windowMigrationPassword := windowMigrationPassword.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2732
    windowMigrationPassword := windowMigrationPassword asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2733
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2734
    "/
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2735
    "/ extract relevant rdoit settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2736
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2737
    rDoitsEnabled := rDoitLogging := rDoitErrorLogging := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2738
    (hasRDoitServer := RDoItServer notNil) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2739
        RDoItServer isLoaded ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2740
            rDoitsEnabled := RDoItServer serverRunning.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2741
            rDoitLogging := RDoItServer isLogging.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2742
            rDoitErrorLogging := RDoItServer isErrorLogging.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2743
            rDoitErrorDebugging := RDoItServer isErrorCatching not.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2744
            rDoitServerPort := RDoItServer defaultPortNumberOrPath.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2745
        ]
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2746
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2747
    org_rDoitsEnabled := rDoitsEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2748
    org_rDoitLogging := rDoitLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2749
    org_rDoitErrorLogging := rDoitErrorLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2750
    org_rDoitErrorDebugging := rDoitErrorDebugging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2751
    org_rDoitServerPort := rDoitServerPort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2752
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2753
    rDoitServerPort := rDoitServerPort asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2754
    rDoitsEnabled := rDoitsEnabled asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2755
    rDoitLogging := rDoitLogging asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2756
    rDoitErrorLogging := rDoitErrorLogging asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2757
    rDoitErrorDebugging := rDoitErrorDebugging asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2758
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2759
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2760
    "/ extract http-server settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2761
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2762
    hasHTTPServer := httpServerRunning := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2763
    (hasHTTPServer := HTTPServer notNil) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2764
        HTTPServer isLoaded ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2765
            httpServerRunning := HTTPServer isRunning.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2766
            "/ httpServerFileRoot := HTTPServer fileRoot.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2767
            httpServerHomeURL := HTTPServer homeURL.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2768
            httpServerPort := HTTPServer port.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2769
            httpServerLogFile := HTTPServer logFile.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2770
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2771
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2772
    org_httpServerRunning := httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2773
    httpServerRunning := httpServerRunning asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2774
    org_httpServerFileRoot := httpServerFileRoot.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2775
    httpServerFileRoot := httpServerFileRoot asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2776
    org_httpServerHomeURL := httpServerHomeURL.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2777
    httpServerHomeURL := httpServerHomeURL asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2778
    org_httpServerPort := httpServerPort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2779
    httpServerPort := httpServerPort asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2780
    org_httpServerLogFile := httpServerLogFile.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2781
    httpServerLogFile := httpServerLogFile asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2782
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2783
    httpServerRunning
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2784
        onChangeEvaluate:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2785
            "/ httpServerFileRoot value:(HTTPServer fileRoot).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2786
            httpServerHomeURL value:(HTTPServer homeURL).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2787
            httpServerPort value:(HTTPServer port).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2788
            httpServerLogFile value:(HTTPServer logFile)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2789
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2790
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2791
    hasSwiki := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2792
    swikiEnabled := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2793
    soapEnabled := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2794
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2795
    (hasSwiki := PWS::SwikiAction notNil) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2796
        PWS::SwikiAction isLoaded ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2797
            (HTTPServer notNil and:[HTTPServer isLoaded]) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2798
                swikiEnabled := (defaultServer notNil and:[defaultServer hasServiceForServiceClass:SwikiAction]).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2799
                swikiRoot := PWS::SwikiAction serverDirectory.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2800
            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2801
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2802
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2803
    (hasSoap := SOAP::SoapHttpModule notNil) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2804
        SOAP::SoapHttpModule isLoaded ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2805
            (HTTPServer notNil and:[HTTPServer isLoaded]) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2806
                soapEnabled := HTTPServer soapEnabled.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2807
            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2808
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2809
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2810
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2811
    org_swikiRoot := swikiRoot.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2812
    org_swikiEnabled := swikiEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2813
    org_soapEnabled := soapEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2814
    swikiRoot := swikiRoot asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2815
    swikiEnabled := swikiEnabled asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2816
    soapEnabled := soapEnabled asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2817
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2818
    swikiEnabled
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2819
        onChangeEvaluate:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2820
            swikiRoot value:(PWS::SwikiAction serverDirectory).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2821
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2822
4872
b8ab742630af *** empty log message ***
penk
parents: 4863
diff changeset
  2823
5024
a52b4b0941b5 unstable state
penk
parents: 5016
diff changeset
  2824
    allowEmbedded := defaultServer notNil and:[defaultServer hasServiceForServiceClass:HTTPEmbeddedApplicationService].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2825
    org_allowEmbedded := allowEmbedded.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2826
    allowEmbedded := allowEmbedded asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2827
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2828
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2829
    "/ osi settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2830
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2831
    osiACSEPresent := OSI::ACSE notNil and:[OSI::ACSE isLoaded].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2832
    osiROSEPresent := OSI::ROSE notNil and:[OSI::ROSE isLoaded].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2833
    osiCMISEPresent := OSI::CMISE notNil and:[OSI::CMISE isLoaded].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2834
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2835
    osiACSEPresent ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2836
        osiACSEErrorLogging := OSI::ACSE errorLogging asValue.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2837
        osiACSEConnectionLogging := OSI::ACSE connectionLogging asValue.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2838
        osiACSEDataLogging :=  OSI::ACSE dataLogging asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2839
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2840
    osiROSEPresent ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2841
        osiROSEErrorLogging := OSI::ROSE errorLogging asValue.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2842
        osiROSEInvokationLogging := OSI::ROSE invocationLogging asValue.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2843
        osiROSEResponseLogging :=  OSI::ROSE responseLogging asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2844
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2845
    osiCMISEPresent ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2846
        osiCMISEErrorLogging := OSI::CMISE errorLogging asValue.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2847
        osiCMISEMessageLogging := OSI::CMISE messageLogging asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2848
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2849
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2850
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2851
    "/ create a box on those values ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2852
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2853
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2854
    box label:(resources string:'Communication settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2855
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2856
    box addTextLabel:(resources string:'Remote browsing').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2857
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2858
    check := box addCheckBox:(resources string:'Remote browsing enabled') on:remoteBrowsingEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2859
    hasRemoteBrowsingSupport ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2860
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2861
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2862
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2863
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2864
    box addTextLabel:(resources string:'Window migration').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2865
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2866
    check := box addCheckBox:(resources string:'Window migration enabled') on:windowMigrationEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2867
    hasWindowMigrationServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2868
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2869
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2870
    check := box addCheckBox:(resources string:'Password check') on:windowMigrationAuthenticate.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2871
    check enableChannel:windowMigrationEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2872
    hasWindowMigrationServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2873
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2874
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2875
    box leftIndent:20.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2876
    in := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2877
            addLabelledInputField:(resources string:'Password:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2878
            adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2879
            on:nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2880
            tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2881
            separateAtX:0.3.
8074
c6e0ef5fa300 use bePassword
Claus Gittinger <cg@exept.de>
parents: 7980
diff changeset
  2882
    in bePassword.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2883
    in model:windowMigrationPassword.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2884
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2885
    in enableChannel:windowMigrationAuthenticate.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2886
    box leftIndent:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2887
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2888
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2889
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2890
    box addTextLabel:'RDoIt Server'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2891
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2892
    check := box addCheckBox:(resources string:'Remote doits enabled') on:rDoitsEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2893
    hasRDoitServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2894
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2895
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2896
    box leftIndent:20.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2897
    rDoitsEnabled onChangeEvaluate:[ rDoitsEnabled value ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2898
                                        rDoitServerPort value isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2899
                                            rDoitServerPort value:(RDoItServer defaultPortNumberOrPath printString).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2900
                                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2901
                                     ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2902
                                   ].
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2903
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2904
    in := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2905
            addLabelledInputField:(resources string:'Port:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2906
            adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2907
            on:nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2908
            tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2909
            separateAtX:0.3.
5033
2b52a33c7eee allow for rdoitPort to be a string (for ud sockets)
Claus Gittinger <cg@exept.de>
parents: 5032
diff changeset
  2910
    "/ in converter:(PrintConverter new initForNumber).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2911
    in model:rDoitServerPort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2912
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2913
    in enableChannel:rDoitsEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2914
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2915
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2916
    check := box addCheckBox:(resources string:'Log errors') on:rDoitErrorLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2917
    check width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2918
    check enableChannel:rDoitsEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2919
    hasRDoitServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2920
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2921
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2922
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2923
    check := box addCheckBox:(resources string:'Log requests') on:rDoitLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2924
    check left:0.4; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2925
    check enableChannel:rDoitsEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2926
    hasRDoitServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2927
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2928
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2929
    check := box addCheckBox:(resources string:'Debug errors') on:rDoitErrorDebugging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2930
    check width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2931
    check enableChannel:rDoitsEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2932
    hasRDoitServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2933
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2934
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2935
    box leftIndent:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2936
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2937
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2938
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2939
    box addTextLabel:'HTTP Server'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2940
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2941
    check := box addCheckBox:(resources string:'Serving HTTP Requests') on:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2942
    hasHTTPServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2943
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2944
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2945
    box leftIndent:20.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2946
    in := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2947
            addLabelledInputField:(resources string:'Port:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2948
            adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2949
            on:nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2950
            tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2951
            separateAtX:0.3.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2952
    in converter:(PrintConverter new initForNumber).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2953
    in model:httpServerPort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2954
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2955
    in enableChannel:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2956
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2957
    in := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2958
            addLabelledInputField:(resources string:'Log File:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2959
            adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2960
            on:httpServerLogFile
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2961
            tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2962
            separateAtX:0.3.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2963
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2964
    in enableChannel:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2965
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2966
"/    in := box
5169
69b73214504d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5153
diff changeset
  2967
"/            addLabelledInputField:(resources string:'File Root:')
69b73214504d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5153
diff changeset
  2968
"/            adjust:#right
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2969
"/            on:httpServerFileRoot
5169
69b73214504d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5153
diff changeset
  2970
"/            tabable:true
69b73214504d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5153
diff changeset
  2971
"/            separateAtX:0.3.
69b73214504d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5153
diff changeset
  2972
"/    in acceptChannel:acceptChannel.
69b73214504d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5153
diff changeset
  2973
"/    in enableChannel:httpServerRunning.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2974
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2975
    in := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2976
            addLabelledInputField:(resources string:'Home URL:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2977
            adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2978
            on:httpServerHomeURL
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2979
            tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2980
            separateAtX:0.3.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2981
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2982
    in enableChannel:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2983
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2984
    check := box addCheckBox:(resources string:'Swiki enabled') on:swikiEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2985
    hasHTTPServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2986
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2987
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2988
    check enableChannel:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2989
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2990
"/    box leftIndent:40.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2991
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2992
    in := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2993
            addLabelledInputField:(resources string:'SwikiRoot:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2994
            adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2995
            on:swikiRoot
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2996
            tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2997
            separateAtX:0.3.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2998
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2999
    in enableChannel:(BlockValue forLogical:httpServerRunning and:swikiEnabled).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3000
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3001
    check := box addCheckBox:(resources string:'Allow embedded ST applications') on:allowEmbedded.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3002
    hasHTTPServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3003
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3004
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3005
    check enableChannel:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3006
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3007
    check := box addCheckBox:(resources string:'Soap enabled') on:soapEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3008
    hasHTTPServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3009
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3010
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3011
    check enableChannel:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3012
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3013
    box leftIndent:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3014
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3015
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3016
    box addTextLabel:(resources string:'OSI Protocols (addOn package)').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3017
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3018
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3019
    check := box addCheckBox:(resources string:'Log %1 Errors' with:'ACSE') on:osiACSEErrorLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3020
    check width:0.33.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3021
    osiACSEPresent ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3022
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3023
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3024
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3025
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3026
    check := box addCheckBox:(resources string:'Connections') on:osiACSEConnectionLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3027
    osiACSEPresent ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3028
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3029
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3030
    check left:0.33; width:0.33.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3031
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3032
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3033
    check := box addCheckBox:(resources string:'Data Xfer') on:osiACSEDataLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3034
    osiACSEPresent ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3035
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3036
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3037
    check left:0.66; width:0.34.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3038
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3039
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3040
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3041
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3042
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3043
    check := box addCheckBox:(resources string:'Log %1 Errors' with:'ROSE') on:osiROSEErrorLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3044
    osiROSEPresent ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3045
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3046
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3047
    check width:0.33.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3048
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3049
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3050
    check := box addCheckBox:(resources string:'Invoactions') on:osiROSEInvokationLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3051
    osiROSEPresent ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3052
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3053
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3054
    check left:0.33; width:0.33.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3055
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3056
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3057
    check := box addCheckBox:(resources string:'Responses') on:osiROSEResponseLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3058
    osiROSEPresent ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3059
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3060
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3061
    check left:0.66; width:0.34.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3062
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3063
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3064
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3065
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3066
    check := box addCheckBox:(resources string:'Log %1 Errors' with:'CMISE') on:osiCMISEErrorLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3067
    osiCMISEPresent ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3068
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3069
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3070
    check width:0.33.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3071
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3072
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3073
    check := box addCheckBox:(resources string:'Messages') on:osiCMISEMessageLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3074
    osiCMISEPresent ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3075
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3076
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3077
    check left:0.33; width:0.33.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3078
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3079
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3080
    box addHorizontalLine.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3081
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3082
        addHelpButtonFor:'Launcher/communicationsSettings.html';
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3083
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3084
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3085
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3086
    "/ show the box ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3087
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3088
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3089
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3090
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3091
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3092
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3093
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3094
        acceptChannel value:false; value:true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3095
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3096
        hasRemoteBrowsingSupport ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3097
            remoteBrowsingEnabled := remoteBrowsingEnabled value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3098
            (remoteBrowsingEnabled ~~ org_remoteBrowsingEnabled) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3099
                remoteBrowsingEnabled ~~ SmalltalkShareServer serverRunning ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3100
                    remoteBrowsingEnabled ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3101
                        SmalltalkShareServer killAll
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3102
                    ] ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3103
                        SmalltalkShareServer start.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3104
                        "/ must wait a bit; give it a chance to
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3105
                        "/ really start (before checking)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3106
                        Delay waitForSeconds:0.5.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3107
                        SmalltalkShareServer serverRunning ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3108
                            self warn:'SmalltalkShareServer startup failed (see stderr).'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3109
                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3110
                    ]
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
        hasWindowMigrationServer ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3116
            windowMigrationEnabled := windowMigrationEnabled value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3117
            windowMigrationAuthenticate := windowMigrationAuthenticate value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3118
            windowMigrationPassword := windowMigrationPassword value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3119
            (windowMigrationEnabled ~~ org_windowMigrationEnabled
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3120
            or:[windowMigrationAuthenticate ~~ org_windowMigrationAuthenticate
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3121
            or:[windowMigrationPassword ~~ org_windowMigrationPassword]])  ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3122
                windowMigrationAuthenticate ~~ org_windowMigrationAuthenticate ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3123
                    windowMigrationAuthenticate ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3124
                        WindowMigrationServer password:nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3125
                    ] ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3126
                        WindowMigrationServer password:windowMigrationPassword
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3127
                    ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3128
                ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3129
                windowMigrationEnabled ~~ WindowMigrationServer serverRunning ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3130
                    windowMigrationEnabled ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3131
                        WindowMigrationServer stop
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3132
                    ] ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3133
                        WindowMigrationServer start.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3134
                        "/ must wait a bit; give it a chance to
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3135
                        "/ really start (before checking)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3136
                        Delay waitForSeconds:0.5.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3137
                        WindowMigrationServer serverRunning ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3138
                            self warn:'WindowMigrationServer startup failed (see stderr).'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3139
                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3140
                    ]
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
        hasRDoitServer ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3146
            (rDoitLogging value ~~ org_rDoitLogging
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3147
            or:[rDoitErrorDebugging value ~~ org_rDoitErrorDebugging
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3148
            or:[rDoitErrorLogging value ~~ org_rDoitErrorLogging
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3149
            or:[rDoitsEnabled value ~~ org_rDoitsEnabled
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3150
            or:[rDoitServerPort value ~~ org_rDoitServerPort]]]]) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3151
                (Integer readFrom:rDoitServerPort value onError:nil) isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3152
                    RDoItServer defaultPortNumberOrPath:rDoitServerPort value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3153
                ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3154
                    RDoItServer defaultPortNumberOrPath:(Integer readFrom:rDoitServerPort value onError:nil).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3155
                ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3156
                RDoItServer logging:(rDoitLogging value).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3157
                RDoItServer errorLogging:(rDoitErrorLogging value).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3158
                RDoItServer errorCatching:(rDoitErrorDebugging value not).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3159
                rDoitsEnabled := rDoitsEnabled value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3160
                rDoitsEnabled ~~ RDoItServer serverRunning ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3161
                    rDoitsEnabled ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3162
                        RDoItServer stop
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3163
                    ] ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3164
                        RDoItServer start.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3165
                        "/ must wait a bit; give it a chance to
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3166
                        "/ really start (before checking)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3167
                        Delay waitForSeconds:0.5.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3168
                        RDoItServer serverRunning ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3169
                            self warn:'RDoit startup failed (see stderr).'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3170
                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3171
                    ]
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
        (hasHTTPServer and:[HTTPServer isLoaded]) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3177
            httpServerPort := httpServerPort value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3178
            org_httpServerPort ~= httpServerPort ifTrue:[
5024
a52b4b0941b5 unstable state
penk
parents: 5016
diff changeset
  3179
"/                HTTPServer port:httpServerPort.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3180
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3181
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3182
            httpServerFileRoot := httpServerFileRoot value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3183
            httpServerFileRoot size == 0 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3184
                httpServerFileRoot := nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3185
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3186
            org_httpServerFileRoot ~= httpServerFileRoot ifTrue:[
5024
a52b4b0941b5 unstable state
penk
parents: 5016
diff changeset
  3187
"/                HTTPServer fileRoot:httpServerFileRoot.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3188
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3189
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3190
            httpServerLogFile := httpServerLogFile value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3191
            httpServerLogFile size == 0 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3192
                httpServerLogFile := nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3193
            ].
5024
a52b4b0941b5 unstable state
penk
parents: 5016
diff changeset
  3194
"/            org_httpServerLogFile ~= httpServerLogFile ifTrue:[
a52b4b0941b5 unstable state
penk
parents: 5016
diff changeset
  3195
"/                HTTPServer logFile:httpServerLogFile.
a52b4b0941b5 unstable state
penk
parents: 5016
diff changeset
  3196
"/            ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3197
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3198
            httpServerHomeURL := httpServerHomeURL value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3199
            httpServerHomeURL size == 0 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3200
                httpServerHomeURL := nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3201
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3202
            org_httpServerHomeURL ~= httpServerHomeURL ifTrue:[
5024
a52b4b0941b5 unstable state
penk
parents: 5016
diff changeset
  3203
"/                HTTPServer defaultHomeURL:httpServerHomeURL.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3204
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3205
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3206
            httpServerRunning value ~~ org_httpServerRunning ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3207
                httpServerRunning value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3208
                    HTTPServer startServer
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3209
                ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3210
                    HTTPServer stopServer
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3211
                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3212
            ].
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
        hasSwiki ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3216
            swikiRoot := swikiRoot value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3217
            swikiRoot size == 0 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3218
                swikiRoot := nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3219
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3220
            org_swikiRoot ~= swikiRoot ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3221
                PWS::ServerAction serverDirectory:swikiRoot.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3222
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3223
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3224
            swikiEnabled value ~~ org_swikiEnabled ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3225
                swikiEnabled value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3226
                    HTTPServer setupMySwiki
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3227
                ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3228
                    HTTPServer disableMySwiki
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3229
                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3230
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3231
            allowEmbedded value ~~ org_allowEmbedded ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3232
                defaultServer notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3233
                    HTTPEmbeddedApplicationService registerServiceOn:defaultServer.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3234
                ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3235
            ].
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
        hasSoap ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3238
            soapEnabled value ~~ org_soapEnabled ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3239
                defaultServer notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3240
                    soapEnabled value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3241
                        defaultServer setupSoap
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3242
                    ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3243
                        defaultServer disableSoap
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3244
                    ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3245
                ]
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
        osiACSEPresent ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3250
            OSI::ACSE errorLogging:osiACSEErrorLogging value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3251
            OSI::ACSE connectionLogging:osiACSEConnectionLogging value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3252
            OSI::ACSE dataLogging:osiACSEDataLogging value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3253
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3254
        osiROSEPresent ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3255
            OSI::ROSE errorLogging:osiROSEErrorLogging value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3256
            OSI::ROSE invocationLogging:osiROSEInvokationLogging value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3257
            OSI::ROSE responseLogging:osiROSEResponseLogging value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3258
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3259
        osiCMISEPresent ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3260
            OSI::CMISE errorLogging:osiCMISEErrorLogging value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3261
            OSI::CMISE messageLogging:osiCMISEMessageLogging value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3262
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3263
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3264
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3265
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3266
    "Modified: / 28.6.1999 / 15:44:35 / stefan"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3267
    "Modified: / 20.1.2000 / 19:14:18 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3268
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3269
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3270
compilerSettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  3271
    "open a dialog on compiler related settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  3272
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3273
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3274
    |box warnings warnSTX warnUnderscore warnDollar warnOldStyle warnUnusedVars
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3275
     allowDollar allowUnderscore allowSqueakExtensions allowQualifiedNames
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3276
     allowDolphinExtensions allowOldStyleAssignment allowReservedWordsAsSelectors
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3277
     immutableArrays
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3278
     warnSTXBox warnUnderscoreBox warnOldStyleBox warnCommonMistakes warnCommonMistakesBox
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3279
     warnCompatibility warnCompatibilityBox warnDollarBox warnUnusedVarsBox
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3280
     stcCompilation compilationList stcCompilationOptions
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3281
     historyLines fullHistoryUpdate
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3282
     catchMethodRedefs catchClassRedefs keepSourceOptions keepSource
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3283
     constantFoldingOptions constantFolding justInTimeCompilation
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3284
     warnEnabler check component oldIndent supportsJustInTimeCompilation y
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3285
     y2 fullDebugSupport yMax
5277
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  3286
     compileLazy loadBinaries canLoadBinaries strings idx
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3287
     resources stcSetupButt|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3288
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3289
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3290
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3291
    canLoadBinaries := ObjectFileLoader notNil and:[ObjectFileLoader canLoadObjectFiles].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3292
    loadBinaries := Smalltalk loadBinaries asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3293
    compileLazy := Autoload compileLazy asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3294
6538
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3295
    warnings := ParserFlags warnings asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3296
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3297
    warnSTX := ParserFlags warnSTXSpecials asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3298
    warnUnderscore := ParserFlags warnUnderscoreInIdentifier asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3299
    warnDollar := ParserFlags warnDollarInIdentifier asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3300
    warnOldStyle := ParserFlags warnOldStyleAssignment asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3301
    warnCommonMistakes := ParserFlags warnCommonMistakes asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3302
    warnCompatibility := ParserFlags warnPossibleIncompatibilities asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3303
    warnUnusedVars := ParserFlags warnUnusedVars asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3304
    allowUnderscore := ParserFlags allowUnderscoreInIdentifier asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3305
    allowDollar := ParserFlags allowDollarInIdentifier asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3306
    allowSqueakExtensions := ParserFlags allowSqueakExtensions asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3307
    allowDolphinExtensions := ParserFlags allowDolphinExtensions asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3308
    allowQualifiedNames := ParserFlags allowQualifiedNames asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3309
    allowOldStyleAssignment := ParserFlags allowOldStyleAssignment asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3310
    allowReservedWordsAsSelectors := ParserFlags allowReservedWordsAsSelectors asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3311
    immutableArrays := ParserFlags arraysAreImmutable asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3312
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3313
    constantFoldingOptions := #( nil #level1 #level2 #full ).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3314
    constantFolding := SelectionInList new list:(resources array:#('disabled' 'level1 (always safe)' 'level2 (usually safe)' 'full')).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3315
    constantFolding selectionIndex:3.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3316
5277
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  3317
    stcCompilationOptions := #(default never).
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  3318
    strings := #('primitive code only' 'never').
6538
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3319
    idx := (stcCompilationOptions indexOf:(ParserFlags stcCompilation) ifAbsent:1).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3320
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3321
    stcCompilation := SelectionInList new list:(resources array:strings).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3322
    stcCompilation selectionIndex:idx.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3323
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3324
    (supportsJustInTimeCompilation := ObjectMemory supportsJustInTimeCompilation)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3325
    ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3326
        justInTimeCompilation := ObjectMemory justInTimeCompilation.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3327
        fullDebugSupport := ObjectMemory fullSingleStepSupport.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3328
    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3329
        justInTimeCompilation := false.
11813
4b506523f3bc lineNumberInfo moved from parser to parserflags
Claus Gittinger <cg@exept.de>
parents: 11684
diff changeset
  3330
        fullDebugSupport := (ParserFlags fullLineNumberInfo) asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3331
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3332
    justInTimeCompilation := justInTimeCompilation asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3333
    fullDebugSupport := fullDebugSupport asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3334
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3335
    catchMethodRedefs := Class catchMethodRedefinitions asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3336
    catchClassRedefs := Class catchClassRedefinitions asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3337
    historyLines := HistoryManager notNil and:[HistoryManager isLoaded and:[HistoryManager isActive]].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3338
    historyLines ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3339
        fullHistoryUpdate := false asValue
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3340
    ] ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3341
        fullHistoryUpdate := HistoryManager fullHistoryUpdate asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3342
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3343
    historyLines := historyLines asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3344
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3345
    keepSourceOptions := #( keep reference absReference sourceReference discard ).
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3346
    keepSource := SelectionInList new
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3347
                        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
  3348
    keepSource selectionIndex:1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3349
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3350
    warnEnabler := [
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3351
              warnings value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3352
                warnSTXBox enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3353
                warnOldStyleBox enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3354
                warnCommonMistakesBox enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3355
                warnCompatibilityBox enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3356
                warnUnusedVarsBox enable.
11990
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  3357
                warnUnderscoreBox enabled:allowUnderscore.
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  3358
                warnDollarBox enabled:allowDollar.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3359
              ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3360
                warnSTXBox disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3361
                warnUnderscoreBox disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3362
                warnDollarBox disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3363
                warnOldStyleBox disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3364
                warnCommonMistakesBox disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3365
                warnCompatibilityBox disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3366
                warnUnusedVarsBox disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3367
              ]].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3368
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3369
    warnings onChangeEvaluate:warnEnabler.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3370
    allowUnderscore onChangeEvaluate:warnEnabler.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3371
    allowDollar onChangeEvaluate:warnEnabler.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3372
"/    allowSqueakExtensions onChangeEvaluate:warnEnabler.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3373
"/    allowQualifiedNames onChangeEvaluate:warnEnabler.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3374
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3375
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3376
    box label:(resources string:'Compiler Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3377
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3378
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3379
    check := box addCheckBox:(resources string:'Catch Method Redefinitions') on:catchMethodRedefs.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3380
    check width:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3381
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3382
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3383
    check := box addCheckBox:(resources string:'Catch Class Redefinitions') on:catchClassRedefs.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3384
    check left:0.5; width:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3385
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3386
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3387
    check := box addCheckBox:(resources string:'Keep History Line in Methods') on:historyLines.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3388
    check width:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3389
    HistoryManager isNil ifTrue:[check disable].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3390
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3391
    check := box addCheckBox:(resources string:'Keep Full Class History') on:fullHistoryUpdate.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3392
    check left:0.5; width:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3393
    HistoryManager isNil ifTrue:[check disable] ifFalse:[check enableChannel:historyLines].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3394
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3395
    box addPopUpList:(resources string:'FileIn Source Mode:') on:keepSource.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3396
    keepSource selectionIndex:( keepSourceOptions indexOf:(ClassCategoryReader sourceMode) ifAbsent:1).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3397
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3398
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3399
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3400
    box addCheckBox:(resources string:'Lazy Compilation when Autoloading') on:compileLazy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3401
    check := box addCheckBox:(resources string:'If Present, Load Binary Objects when Autoloading') on:loadBinaries.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3402
    canLoadBinaries ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3403
        loadBinaries value:false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3404
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3405
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3406
    supportsJustInTimeCompilation ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3407
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3408
                        addCheckBox:(resources string:'Just in Time Compilation to Machine Code')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3409
                        on:justInTimeCompilation.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3410
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3411
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3412
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3413
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3414
    ObjectFileLoader notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3415
        compilationList := box addPopUpList:(resources string:'Stc Compilation to Machine Code') on:stcCompilation.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3416
        stcCompilation selectionIndex:( stcCompilationOptions indexOf:(Compiler stcCompilation) ifAbsent:1).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3417
        stcSetupButt := box addComponent:(Button label:(resources string:'Stc Compilation Parameters...')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3418
                   action:[|manager|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3419
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3420
                           self stcCompilerSettings.
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
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3423
        box addHorizontalLine.
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
        "/ if there is no compiler around,
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3426
        "/ change to compile nothing, and disable the checkBoxes
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3427
        Compiler canCreateMachineCode ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3428
            stcCompilation selectionIndex:(3 min:stcCompilationOptions size).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3429
            compilationList disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3430
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3431
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3432
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3433
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3434
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3435
    component := box addCheckBox:(resources string:'Allow Underscore in Identifiers') on:allowUnderscore.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3436
    component width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3437
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3438
    component := box addCheckBox:(resources string:'Allow Dollar in Identifiers') on:allowDollar.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3439
    component width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3440
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3441
    component := box addCheckBox:(resources string:'Allow VW3 QualifiedNames') on:allowQualifiedNames.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3442
    component width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3443
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3444
    component := box addCheckBox:(resources string:'Allow Squeak Extensions') on:allowSqueakExtensions.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3445
    component width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3446
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3447
    component := box addCheckBox:(resources string:'Allow Dolphin Extensions') on:allowDolphinExtensions.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3448
    component width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3449
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3450
    y2 := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3451
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3452
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3453
    box leftIndent:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3454
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3455
    component :=box addPopUpList:(resources string:'Constant Folding:') on:constantFolding.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3456
    component superView left:0.5; width:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3457
    constantFolding selectionIndex:( constantFoldingOptions indexOf:(Compiler foldConstants) ifAbsent:1).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3458
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3459
    component := box addCheckBox:(resources string:'Allow OldStyle Assignment (_)') on:allowOldStyleAssignment.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3460
    component left:0.5; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3461
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3462
    component := box addCheckBox:(resources string:'Allow Reserved Words as Selector (self)') on:allowReservedWordsAsSelectors.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3463
    component left:0.5; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3464
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3465
    component := box addCheckBox:(resources string:'Full Debug Info') on:fullDebugSupport.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3466
    component left:0.5; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3467
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3468
    component := box addCheckBox:(resources string:'Literal Arrays are Immutable') on:immutableArrays.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3469
    component left:0.5; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3470
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3471
    box yPosition:(box yPosition max:y2).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3472
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3473
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3474
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3475
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3476
    box addCheckBox:(resources string:'Warnings') on:warnings.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3477
"/    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3478
    oldIndent := box leftIndent.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3479
    box leftIndent:30.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3480
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3481
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3482
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3483
    warnSTXBox := box addCheckBox:(resources string:'ST/X Extensions') on:warnSTX.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3484
    warnSTXBox width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3485
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3486
    warnUnderscoreBox := box addCheckBox:(resources string:'Underscores in Identifiers') on:warnUnderscore.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3487
    warnUnderscoreBox width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3488
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3489
    warnDollarBox := box addCheckBox:(resources string:'Dollars in Identifiers') on:warnDollar.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3490
    warnDollarBox width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3491
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3492
    warnUnusedVarsBox := box addCheckBox:(resources string:'Unused Method Variables') on:warnUnusedVars.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3493
    warnUnusedVarsBox width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3494
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3495
    yMax := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3496
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3497
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3498
    box leftIndent:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3499
    warnOldStyleBox := box addCheckBox:(resources string:'OldStyle Assignment') on:warnOldStyle.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3500
    warnOldStyleBox left:0.5; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3501
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3502
    warnCommonMistakesBox := box addCheckBox:(resources string:'Common Mistakes') on:warnCommonMistakes.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3503
    warnCommonMistakesBox left:0.5; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3504
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3505
    warnCompatibilityBox := box addCheckBox:(resources string:'Possible Incompatibilities') on:warnCompatibility.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3506
    warnCompatibilityBox left:0.5; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3507
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3508
    box leftIndent:oldIndent.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3509
    box yPosition:(yMax max: box yPosition).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3510
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3511
    box addHorizontalLine.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3512
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3513
        addHelpButtonFor:'Launcher/compilerSettings.html';
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3514
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3515
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3516
    warnEnabler value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3517
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3518
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3519
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3520
        HistoryManager notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3521
            HistoryManager fullHistoryUpdate:fullHistoryUpdate value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3522
            historyLines value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3523
                HistoryManager activate
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3524
            ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3525
                HistoryManager deactivate
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3526
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3527
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3528
        Class catchMethodRedefinitions:catchMethodRedefs value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3529
        Class catchClassRedefinitions:catchClassRedefs value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3530
        ClassCategoryReader sourceMode:(keepSourceOptions at:keepSource selectionIndex).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3531
        Compiler warnings:warnings value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3532
        Compiler warnSTXSpecials:warnSTX value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3533
        Compiler warnOldStyleAssignment:warnOldStyle value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3534
        Compiler warnUnderscoreInIdentifier:warnUnderscore value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3535
        Compiler warnDollarInIdentifier:warnDollar value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3536
        Compiler warnCommonMistakes:warnCommonMistakes value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3537
        Compiler warnPossibleIncompatibilities:warnCompatibility value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3538
        Compiler warnUnusedVars:warnUnusedVars value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3539
        Compiler allowUnderscoreInIdentifier:allowUnderscore value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3540
        Compiler allowDollarInIdentifier:allowDollar value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3541
        Compiler allowSqueakExtensions:allowSqueakExtensions value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3542
        Compiler allowDolphinExtensions:allowDolphinExtensions value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3543
        Compiler allowQualifiedNames:allowQualifiedNames value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3544
        Compiler allowOldStyleAssignment:allowOldStyleAssignment value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3545
        Compiler allowReservedWordsAsSelectors:allowReservedWordsAsSelectors value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3546
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3547
        Compiler arraysAreImmutable:immutableArrays value.
11813
4b506523f3bc lineNumberInfo moved from parser to parserflags
Claus Gittinger <cg@exept.de>
parents: 11684
diff changeset
  3548
        ParserFlags lineNumberInfo:(fullDebugSupport value ifTrue:[#full] ifFalse:[true]).
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3549
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3550
        ParserFlags stcCompilation:(stcCompilationOptions at:stcCompilation selectionIndex).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3551
        Compiler foldConstants:(constantFoldingOptions at:constantFolding selectionIndex).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3552
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3553
        supportsJustInTimeCompilation ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3554
            justInTimeCompilation := justInTimeCompilation value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3555
            justInTimeCompilation ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3556
                Smalltalk allMethodsDo:[:m | m checked:false].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3557
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3558
            ObjectMemory justInTimeCompilation:justInTimeCompilation.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3559
            ObjectMemory fullSingleStepSupport:fullDebugSupport value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3560
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3561
        Autoload compileLazy:compileLazy value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3562
        Smalltalk loadBinaries:loadBinaries value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3563
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3564
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3565
4386
9e11f7a0936e change the settingsApplication list
penk
parents: 4385
diff changeset
  3566
"
9e11f7a0936e change the settingsApplication list
penk
parents: 4385
diff changeset
  3567
    self compilerSettings
9e11f7a0936e change the settingsApplication list
penk
parents: 4385
diff changeset
  3568
"
11813
4b506523f3bc lineNumberInfo moved from parser to parserflags
Claus Gittinger <cg@exept.de>
parents: 11684
diff changeset
  3569
4b506523f3bc lineNumberInfo moved from parser to parserflags
Claus Gittinger <cg@exept.de>
parents: 11684
diff changeset
  3570
    "Modified: / 10-09-1995 / 19:19:18 / claus"
4b506523f3bc lineNumberInfo moved from parser to parserflags
Claus Gittinger <cg@exept.de>
parents: 11684
diff changeset
  3571
    "Modified: / 09-09-1996 / 22:42:47 / stefan"
4b506523f3bc lineNumberInfo moved from parser to parserflags
Claus Gittinger <cg@exept.de>
parents: 11684
diff changeset
  3572
    "Modified: / 26-09-2012 / 14:16:39 / cg"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3573
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3574
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3575
displaySettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  3576
    "open a dialog on display related settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  3577
     Obsoleted by the settings application."
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3578
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3579
    |box listOfSizes sizeInfos
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3580
     sizes sizeNames sizeList sizeX sizeY deepIcons
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3581
     isColorMonitor useFixPalette useFixGrayPalette idx ditherStyles ditherSyms ditherList
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3582
     y component screen visual clipEncodings clipEncodingSyms clipEncodingList resources
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3583
     |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3584
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3585
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3586
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3587
    listOfSizes := resources at:'LIST_OF_OFFERED_SCREEN_SIZES' default:#default.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3588
    listOfSizes == #default ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3589
        "/ nothing in resource file; offer at least some.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3590
        sizeInfos := #(
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3591
                           ( '11.3'' (235mm x 175mm) LCD'   (235 175)    )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3592
                           ( '17''   (325mm x 245mm)'       (325 245)    )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3593
                           ( '19''   (340mm x 270mm)'       (340 270)    )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3594
                           ( '20''   (350mm x 280mm)'       (350 280)    )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3595
                           ( '21''   (365mm x 285mm)'       (365 285)    )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3596
                       ).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3597
    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3598
        sizeInfos := resources array:listOfSizes.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3599
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3600
    sizeNames := sizeInfos collect:[:entry | entry at:1].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3601
    sizes := sizeInfos collect:[:entry | entry at:2].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3602
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3603
    screen := Screen current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3604
    visual := screen visualType.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3605
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3606
    isColorMonitor := screen hasColors asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3607
    deepIcons := screen supportsDeepIcons asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3608
    useFixPalette := screen fixColors notNil asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3609
    useFixGrayPalette := screen fixGrayColors notNil asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3610
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3611
    sizeList := SelectionInList with:sizeNames.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3612
    sizeX := screen widthInMillimeter asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3613
    sizeY := screen heightInMillimeter asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3614
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3615
    clipEncodingSyms := #(nil #iso8859 #jis #jis7 #sjis #euc #big5).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3616
    clipEncodings := resources array:#('untranslated' 'iso8859' 'jis' 'jis7' 'shift-JIS' 'EUC' 'big5').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3617
    clipEncodingList := SelectionInList new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3618
    clipEncodingList list:clipEncodings.
6036
826c4d2271b3 Unify naming: clipBoard->clipboard
Stefan Vogel <sv@exept.de>
parents: 6032
diff changeset
  3619
    clipEncodingList selectionIndex:(clipEncodingSyms indexOf:screen clipboardEncoding ifAbsent:1).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3620
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3621
    ditherList := SelectionInList new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3622
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3623
    (visual == #StaticGray or:[visual == #GrayScale]) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3624
        ditherStyles := #('threshold' 'ordered dither' 'error diffusion').
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3625
        ditherSyms := #(threshold ordered floydSteinberg).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3626
    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3627
        visual ~~ #TrueColor ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3628
            ditherStyles := #('nearest color' 'error diffusion').
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3629
            ditherSyms := #(ordered floydSteinberg).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3630
        ]
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3631
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3632
    ditherSyms notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3633
        ditherList list:ditherStyles.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3634
        ditherList selectionIndex:(ditherSyms indexOf:(Image ditherAlgorithm) ifAbsent:#threshold).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3635
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3636
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3637
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3638
    box label:(resources string:'Display Screen Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3639
13735
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  3640
    box addTextLabel:(resources string:'Actual Visible Screen Area:') adjust:#left.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3641
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3642
    (box addPopUpList:(resources string:'Common Sizes:') on:sizeList)
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3643
        label:'monitor size'.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3644
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3645
    idx := sizes findFirst:[:entry |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3646
                                ((entry at:1) = sizeX value)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3647
                                and:[((entry at:2) = sizeY value)]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3648
                           ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3649
    idx ~~ 0 ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3650
        sizeList selectionIndex:idx
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3651
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3652
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3653
    sizeList onChangeEvaluate:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3654
                                        |idx|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3655
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3656
                                        idx := sizeList selectionIndex.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3657
                                        sizeX value:((sizes at:idx) at:1).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3658
                                        sizeY value:((sizes at:idx) at:2).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3659
                                    ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3660
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3661
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3662
    component := box addTextLabel:(resources string:'Screen Size:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3663
    component width:0.3; adjust:#right; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3664
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3665
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3666
    component := box addInputFieldOn:nil tabable:true.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3667
    component width:0.25; left:0.3;
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3668
              immediateAccept:false; acceptOnLeave:false;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3669
              cursorMovementWhenUpdating:#beginOfLine;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3670
              converter:(PrintConverter new initForInteger);
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3671
              model:sizeX.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3672
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3673
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3674
    component := box addTextLabel:(' x ').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3675
    component width:0.1; left:0.55; adjust:#center; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3676
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3677
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3678
    component := box addInputFieldOn:nil tabable:true.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3679
    component width:0.25; left:0.65;
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3680
              immediateAccept:false; acceptOnLeave:false;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3681
              cursorMovementWhenUpdating:#beginOfLine;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3682
              converter:(PrintConverter new initForInteger);
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3683
              model:sizeY.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3684
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3685
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3686
    component := box addTextLabel:('(mm)').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3687
    component width:0.1; left:0.9; adjust:#center; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3688
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3689
    box addVerticalSpace; addHorizontalLine; addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3690
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3691
    (box addTextLabel:(resources string:'Screen: Depth: %1 Visual: %2  (%3)'
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3692
                                 with:screen depth printString
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3693
                                 with:screen visualType
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3694
                                 with:screen serverVendor))
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3695
        adjust:#left.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3696
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3697
    box addVerticalSpace; addHorizontalLine; addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3698
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3699
    box addCheckBox:(resources string:'Color Monitor') on:isColorMonitor.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3700
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3701
    visual == #PseudoColor ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3702
        box addVerticalSpace.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3703
        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
  3704
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3705
        box addVerticalSpace.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3706
        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
  3707
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3708
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3709
    ditherSyms notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3710
        box addVerticalSpace.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3711
        component := box addPopUpList:(resources string:'Image Display:') on:ditherList.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3712
        component defaultLabel:'image display'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3713
        component superView horizontalLayout:#leftSpace.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3714
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3715
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3716
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3717
    box addCheckBox:(resources string:'Allow Colored/Grayscale Icons') on:deepIcons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3718
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3719
    box addVerticalSpace; addHorizontalLine; addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3720
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3721
    component := box addPopUpList:(resources string:'ClipBoard Encoding:') on:clipEncodingList.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3722
    component superView horizontalLayout:#leftSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3723
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3724
    box addHorizontalLine.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3725
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3726
        addHelpButtonFor:'Launcher/screenSettings.html';
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3727
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3728
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3729
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3730
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3731
        Image flushDeviceImages.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3732
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3733
        screen visualType == #PseudoColor ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3734
            useFixPalette value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3735
                Color colorAllocationFailSignal handle:[:ex |
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3736
                    self warn:'Could not allocate colors.'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3737
                ] do:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3738
                    Color getColorsRed:4 green:8 blue:4 on:screen
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3739
                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3740
            ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3741
                screen releaseFixColors
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3742
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3743
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3744
            useFixGrayPalette value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3745
                Color colorAllocationFailSignal handle:[:ex |
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3746
                    self warn:'Could not allocate colors.'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3747
                ] do:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3748
                    Color getGrayColors:32 on:screen
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3749
                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3750
            ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3751
                screen releaseFixGrayColors
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3752
            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3753
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3754
        screen hasColors:isColorMonitor value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3755
        screen widthInMillimeter:sizeX value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3756
        screen heightInMillimeter:sizeY value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3757
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3758
        screen supportsDeepIcons:deepIcons value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3759
        ditherSyms notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3760
            Image ditherAlgorithm:(ditherSyms at:ditherList selectionIndex).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3761
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3762
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3763
        WindowGroup activeGroup withWaitCursorDo:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3764
            View defaultStyle:(View defaultStyle).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3765
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3766
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3767
        screen clipboardEncoding:(clipEncodingSyms at:clipEncodingList selectionIndex).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3768
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3769
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3770
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3771
    "Modified: / 9.9.1996 / 22:43:04 / stefan"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3772
    "Modified: / 20.5.1999 / 18:35:21 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3773
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3774
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3775
editSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3776
    "open a dialog on edit settings"
8421
f1d5ef6bf4f4 default to 4-tabs
Claus Gittinger <cg@exept.de>
parents: 8401
diff changeset
  3777
    "OBSOLETE - this functionality is no longer used - see AbstractSettingsApplication"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3778
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3779
    |box st80EditMode st80SelectMode resources
14682
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3780
     tabsIs4 prevTabsIs4 searchDialogIsModal startTextDragWithControl
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3781
     currentPrefs|
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3782
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3783
    currentPrefs := UserPreferences current.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3784
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3785
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3786
    "/
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3787
    "/ extract relevant system settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3788
    "/
14682
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3789
    st80EditMode := currentPrefs st80EditMode asValue.
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3790
    st80SelectMode := currentPrefs st80SelectMode asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3791
    prevTabsIs4 := (ListView userDefaultTabPositions = ListView tab4Positions).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3792
    tabsIs4 := prevTabsIs4 asValue.
14682
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3793
    searchDialogIsModal := currentPrefs searchDialogIsModal asValue.
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3794
    startTextDragWithControl := currentPrefs startTextDragWithControl asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3795
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3796
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3797
    "/ create a box on those values ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3798
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3799
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3800
    box label:(resources string:'Edit settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3801
6806
1f45872c372f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6661
diff changeset
  3802
    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
  3803
    box addCheckBox:(resources string:'Double Click Select Behavior as in ST80') on:st80SelectMode.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3804
    box addCheckBox:(resources string:'Tab Stops in Multiples of 4') on:tabsIs4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3805
    box addCheckBox:(resources string:'SearchBox is Modal') on:searchDialogIsModal.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3806
    box addCheckBox:(resources string:'CTRL-Key to Start TextDrag') on:startTextDragWithControl.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3807
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3808
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3809
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3810
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3811
        addHelpButtonFor:'Launcher/editSettings.html';
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3812
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3813
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3814
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3815
    "/ show the box ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3816
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3817
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3818
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3819
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3820
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3821
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3822
    box accepted ifTrue:[
14682
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3823
        currentPrefs st80EditMode:(st80EditMode value).
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3824
        currentPrefs st80SelectMode:(st80SelectMode value).
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3825
        tabsIs4 value ~~ prevTabsIs4 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3826
            ListView userDefaultTabPositions:(tabsIs4 value
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3827
                                                ifTrue:[ListView tab4Positions]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3828
                                                ifFalse:[ListView tab8Positions]).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3829
            ListView allSubInstancesDo:[:eachKindOfListView |
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3830
                tabsIs4 value
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3831
                    ifTrue:[eachKindOfListView setTab4]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3832
                    ifFalse:[eachKindOfListView setTab8]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3833
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3834
        ].
14682
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3835
        currentPrefs searchDialogIsModal:searchDialogIsModal value.
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3836
        currentPrefs startTextDragWithControl:startTextDragWithControl value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3837
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3838
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3839
6806
1f45872c372f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6661
diff changeset
  3840
    "Created: / 06-01-1999 / 14:12:09 / cg"
1f45872c372f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6661
diff changeset
  3841
    "Modified: / 03-07-2006 / 16:35:03 / cg"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3842
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3843
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3844
fontSettingsFor:requestor
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3845
    "open a dialog on font related settings"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3846
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3847
    (self fontBoxForEncoding:nil) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3848
        requestor reopenLauncher.
3741
a9d08a1b0d7d Fix save settings dialog when called with Filename arg
Stefan Vogel <sv@exept.de>
parents: 3738
diff changeset
  3849
    ]
4398
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  3850
"
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  3851
    self fontSettingsFor:nil
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  3852
"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3853
    "Created: 26.2.1996 / 22:52:51 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3854
    "Modified: 8.1.1997 / 14:52:49 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3855
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3856
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3857
javaSettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  3858
    "open a dialog on settings related to the java subsystem.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  3859
     Obsoleted by the settings application."
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3860
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3861
    |box audio javaHome classPath oldJavaHome oldClassPath resources component
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3862
     extraFileSecurityChecks extraSocketSecurityChecks
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3863
     supportsJustInTimeCompilation
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3864
     javaJustInTimeCompilation javaNativeCodeOptimization
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3865
     showJavaByteCode exceptionDebug nullPointerExceptionDebug pathSep|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3866
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3867
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3868
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3869
    audio := JavaVM audioEnabled asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3870
    extraFileSecurityChecks := JavaVM fileOpenConfirmation asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3871
    extraSocketSecurityChecks := JavaVM socketConnectConfirmation asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3872
    (supportsJustInTimeCompilation := ObjectMemory supportsJustInTimeCompilation) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3873
        javaJustInTimeCompilation := ObjectMemory javaJustInTimeCompilation asValue.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3874
        javaNativeCodeOptimization := ObjectMemory javaNativeCodeOptimization asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3875
    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3876
        javaJustInTimeCompilation := javaNativeCodeOptimization := false
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3877
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3878
    showJavaByteCode := JavaMethod forceByteCodeDisplay asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3879
    exceptionDebug := JavaVM exceptionDebug asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3880
    nullPointerExceptionDebug := JavaVM nullPointerExceptionDebug asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3881
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3882
    classPath := (Java classPath ? '').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3883
    OperatingSystem isUNIXlike ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3884
        pathSep := $;.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3885
    ] ifFalse:[
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
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3888
    classPath := (classPath asStringWith:pathSep) asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3889
    oldClassPath := classPath copy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3890
    classPath := classPath asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3891
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3892
    javaHome := (Java javaHome ? '').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3893
    oldJavaHome := javaHome copy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3894
    javaHome := javaHome asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3895
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3896
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3897
    box label:(resources string:'Java').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3898
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3899
    box addCheckBox:(resources string:'Audio Enabled') on:audio.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3900
    box addCheckBox:(resources string:'Confirm file open for write') on:extraFileSecurityChecks.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3901
    box addCheckBox:(resources string:'Confirm socket connect') on:extraSocketSecurityChecks.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3902
    box addCheckBox:(resources string:'Debug Exceptions') on:exceptionDebug.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3903
    box addCheckBox:(resources string:'Debug Null Pointer Exceptions') on:nullPointerExceptionDebug.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3904
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3905
    supportsJustInTimeCompilation ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3906
        box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3907
            addCheckBox:(resources string:'java just in time compilation to machine code')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3908
            on:javaJustInTimeCompilation.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3909
        box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3910
            addCheckBox:(resources string:'optimize native code')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3911
            on:javaNativeCodeOptimization.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3912
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3913
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3914
    box addCheckBox:(resources string:'Display java byteCode (i.e. not source)') on:showJavaByteCode.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3915
    box addHorizontalLine.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3916
    component := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3917
                    addLabelledInputField:(resources string:'classPath:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3918
                    adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3919
                    on:classPath
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3920
                    tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3921
                    separateAtX:0.3.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3922
    component acceptOnLeave:false.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3923
    component := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3924
                    addLabelledInputField:(resources string:'java home:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3925
                    adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3926
                    on:javaHome
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3927
                    tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3928
                    separateAtX:0.3.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3929
    component acceptOnLeave:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3930
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3931
    box addVerticalSpace.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3932
    box addComponent:(Button
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3933
                        label:(resources string:'Reinit VM now')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3934
                        action:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3935
                                box windowGroup withWaitCursorDo:[
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3936
"/                                    Java classPath size == 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3937
"/                                        Java initialize.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3938
"/                                    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3939
"/                                    Java classPath size == 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3940
"/                                        self warn:'No JDK found'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3941
"/                                    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3942
                                        JavaVM initializeVM
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3943
"/                                    ]
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3944
                                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3945
                               ]).
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3946
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3947
    box addComponent:(Button
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3948
                        label:(resources string:'Remove all Java classes now')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3949
                        action:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3950
                                box windowGroup withWaitCursorDo:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3951
                                    Java flushAllJavaResources
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3952
                                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3953
                               ]).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3954
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3955
    "/ box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3956
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3957
"/    box addHelpButtonFor:'Launcher/javaSettings.html'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3958
    box addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3959
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3960
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3961
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3962
        classPath value ~= oldClassPath ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3963
            OperatingSystem isUNIXlike ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3964
                classPath := (classPath value asCollectionOfSubstringsSeparatedBy:$:)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3965
            ] ifFalse:[
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
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3968
            Java classPath:classPath
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 javaHome:javaHome value.
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
        JavaMethod forceByteCodeDisplay:showJavaByteCode value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3973
        JavaVM audioEnabled:audio value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3974
        JavaVM exceptionDebug:exceptionDebug value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3975
        JavaVM nullPointerExceptionDebug:nullPointerExceptionDebug value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3976
        JavaVM fileOpenConfirmation: extraFileSecurityChecks value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3977
        JavaVM socketConnectConfirmation: extraSocketSecurityChecks value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3978
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3979
        javaJustInTimeCompilation value ~~ ObjectMemory javaJustInTimeCompilation ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3980
            ObjectMemory javaJustInTimeCompilation:javaJustInTimeCompilation value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3981
            javaJustInTimeCompilation value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3982
                JavaMethod allSubInstancesDo:[:m | m checked:false].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3983
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3984
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3985
        javaNativeCodeOptimization value ~~ ObjectMemory javaNativeCodeOptimization ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3986
            ObjectMemory javaNativeCodeOptimization:javaNativeCodeOptimization value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3987
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3988
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3989
    box destroy
4398
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  3990
"
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  3991
    self javaSettings
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  3992
"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3993
    "Created: / 18.7.1998 / 22:32:58 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3994
    "Modified: / 27.1.1999 / 20:16:03 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3995
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3996
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3997
keyboardSettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  3998
    "open a dialog on keyboard related settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  3999
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4000
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4001
    |mappings listOfRawKeys listOfFunctions
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4002
     box l
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4003
     list1 list2 listView1 listView2
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4004
     frame selectionForwarder macroForwarder macroTextView y resources|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4005
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4006
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4007
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4008
    mappings := Screen current keyboardMap.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4009
13882
212877cb97bf merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13761
diff changeset
  4010
    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
  4011
    listOfFunctions := (mappings values asSet collect:[:key | key asString] as:Array) sort.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4012
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4013
    selectionForwarder := Plug new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4014
    selectionForwarder respondTo:#showFunction
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4015
                  with:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4016
                        |raw|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4017
                        raw := list1 selection.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4018
                        list2 retractInterestsFor:selectionForwarder.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4019
                        list2 selection:(mappings at:raw asSymbol) asString.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4020
                        list2 onChangeSend:#showRawKey to:selectionForwarder.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4021
                       ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4022
    selectionForwarder respondTo:#showRawKey
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4023
                  with:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4024
                        |f raw|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4025
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4026
                        f := list2 selection.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4027
                        list1 retractInterestsFor:selectionForwarder.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4028
                        raw := mappings keyAtValue:f asString.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4029
                        raw isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4030
                            raw := mappings keyAtValue:f first.
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 asSymbol.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4033
                            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4034
                        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4035
                        list1 selection:raw.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4036
                        list1 onChangeSend:#showFunction to:selectionForwarder.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4037
                       ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4038
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4039
    macroForwarder := [
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4040
                        |f macro indent|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4041
                        f := list2 selection.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4042
                        (f startsWith:'Cmd') ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4043
                            f := f copyFrom:4
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4044
                        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4045
                        macro := UserPreferences current functionKeySequences
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4046
                                    at:(f asSymbol) ifAbsent:nil.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4047
                        macro notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4048
                            macro := macro asStringCollection.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4049
                            indent := macro
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4050
                                         inject:99999 into:[:min :element |
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4051
                                             |stripped|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4052
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4053
                                             stripped := element withoutLeadingSeparators.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4054
                                             stripped isEmpty ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4055
                                                 min
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4056
                                             ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4057
                                                 min min:(element size - stripped size)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4058
                                             ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4059
                                         ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4060
                            indent ~~ 0 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4061
                                macro := macro collect:[:line |
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4062
                                             line size > indent ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4063
                                                line copyFrom:indent+1
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4064
                                             ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4065
                                                line
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4066
                                             ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4067
                                        ]
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
                        macroTextView contents:macro.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4071
                       ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4072
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4073
    list1 := SelectionInList with:listOfRawKeys.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4074
    list1 onChangeSend:#showFunction to:selectionForwarder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4075
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4076
    list2 := SelectionInList with:listOfFunctions.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4077
    list2 onChangeSend:#showRawKey to:selectionForwarder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4078
    list2 onChangeEvaluate:macroForwarder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4079
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4080
    box := Dialog new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4081
    box label:(resources string:'Keyboard Mappings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4082
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4083
    l := box addTextLabel:(resources at:'KEY_MSG' default:'keyboard mapping:') withCRs.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4084
    l adjust:#left; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4085
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4086
    frame := View new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4087
    frame extent:300 @ 300.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4088
    frame borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4089
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4090
    listView1 := ScrollableView for:SelectionInListView in:frame.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4091
    listView1 model:list1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4092
    listView1 origin:0.0@0.0 corner:0.5@1.0; inset:2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4093
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4094
    listView2 := ScrollableView for:SelectionInListView in:frame.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4095
    listView2 model:list2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4096
    listView2 origin:0.5@0.0 corner:1.0@1.0; inset:2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4097
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4098
    frame topInset:box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4099
    box addComponent:frame withExtent:350@200.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4100
    box makeTabable:listView1.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4101
    box makeTabable:listView2.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4102
    frame origin:0.0@0.0 corner:1.0@0.6.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4103
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4104
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4105
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4106
    l := box addTextLabel:(resources string:'Macro text (if any):') withCRs.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4107
    l adjust:#left; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4108
    l origin:0.0@0.6 corner:1.0@0.6.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4109
    l topInset:(View viewSpacing).
8160
0dcbd8d60198 added preferredWidth & preferredHeight
Claus Gittinger <cg@exept.de>
parents: 8150
diff changeset
  4110
    l bottomInset:(l preferredHeight negated - View viewSpacing).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4111
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4112
    macroTextView := HVScrollableView for:TextView miniScroller:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4113
    box addComponent:macroTextView tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4114
    macroTextView origin:0.0@0.6 corner:1.0@1.0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4115
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4116
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4117
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4118
        addHelpButtonFor:'Launcher/keyboardSetting.html';
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4119
        "addAbortButton;"
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4120
        addOkButtonLabelled:(resources string:'Close' "'Dismiss'").
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4121
8160
0dcbd8d60198 added preferredWidth & preferredHeight
Claus Gittinger <cg@exept.de>
parents: 8150
diff changeset
  4122
    macroTextView topInset:(l preferredHeight + 5).
0dcbd8d60198 added preferredWidth & preferredHeight
Claus Gittinger <cg@exept.de>
parents: 8150
diff changeset
  4123
    macroTextView bottomInset:(box preferredHeight - y).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4124
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4125
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4126
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4127
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4128
        "no action yet ..."
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4129
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4130
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4131
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4132
    "Modified: / 9.9.1996 / 22:43:17 / stefan"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4133
    "Modified: / 4.5.1998 / 12:40:02 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4134
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4135
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4136
languageSettings
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4137
    self languageSettingsFor:nil
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4138
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4139
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4140
languageSettingsFor:requestor
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4141
    "open a dialog on language related settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4142
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4143
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4144
    |listOfLanguages translatedLanguages switch box languageList flags resources|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4145
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4146
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4147
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4148
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4149
     get list of supported languages from the launchers resources ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4150
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4151
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4152
    listOfLanguages := resources at:'LIST_OF_OFFERED_LANGUAGES' default:#('default').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4153
    listOfLanguages := listOfLanguages asOrderedCollection.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4154
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4155
    translatedLanguages := listOfLanguages collect:[:lang | |item|
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4156
                                        item := resources string:lang.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4157
                                        item isString ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4158
                                            item
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4159
                                        ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4160
                                            item at:1
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4161
                                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4162
                                ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4163
    flags := listOfLanguages collect:[:lang | |item|
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4164
                                        item := resources string:lang.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4165
                                        item isArray ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4166
                                            item at:2
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4167
                                        ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4168
                                            nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4169
                                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4170
                                ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4171
    flags := flags collect:[:nm | |img d| nm notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4172
                                            img := Image fromFile:nm.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4173
                                            img isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4174
                                                d := Smalltalk getPackageDirectoryForPackage:'stx:goodies'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4175
                                                img := Image fromFile:(d construct:nm).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4176
                                            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4177
                                        ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4178
                                            nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4179
                                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4180
                           ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4181
    listOfLanguages := listOfLanguages collect:[:nm | nm copyFrom:'LANG_' size + 1].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4182
    languageList := translatedLanguages with:flags collect:[:lang :flag | LabelAndIcon icon:flag string:lang.].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4183
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4184
    box := ListSelectionBox title:(resources at:'LANG_MSG' default:'Select a Language') withCRs.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4185
    box label:(resources string:'Language Selection').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4186
    box list:languageList.
15954
ee1504092cb5 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15946
diff changeset
  4187
    box initialText:(Smalltalk language , '-' , Smalltalk languageTerritory).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4188
    box action:[:newLanguage |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4189
        WindowGroup activeGroup withWaitCursorDo:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4190
            |fontPref idx language oldLanguage territory enc
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4191
             answer matchingFonts l screen|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4192
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4193
            idx := translatedLanguages indexOf:newLanguage withoutSeparators.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4194
            idx ~~ 0 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4195
                language := listOfLanguages at:idx
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4196
            ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4197
                language := newLanguage
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4198
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4199
            (language includes:$-) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4200
                l := language asCollectionOfSubstringsSeparatedBy:$-.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4201
                language := l at:1.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4202
                territory := l at:2.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4203
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4204
            territory isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4205
                territory := language copyTo:2
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4206
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4207
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4208
            "/ check if the new language needs a differently encoded font;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4209
            "/ ask user to switch font and allow cancellation.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4210
            "/ Otherwise, you are left with unreadable menu & button items ...
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4211
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4212
            oldLanguage := UserPreferences current language.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4213
            Smalltalk setLanguage:language asSymbol.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4214
            ResourcePack flushCachedResourcePacks.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4215
            "/ refetch resources ...
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4216
            resources := self owningClass classResources.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4217
            fontPref := resources at:'PREFERRED_FONT_ENCODING' default:'iso8859*'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4218
            fontPref := fontPref asLowercase.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4219
            Smalltalk setLanguage:oldLanguage.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4220
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4221
            switch := true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4222
            enc := MenuView defaultFont encoding.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4223
            (fontPref match:enc asLowercase) ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4224
                "/ look if there is one at all.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4225
                screen := Screen current.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4226
                matchingFonts := screen listOfAvailableFonts select:[:f | fontPref match:f encoding asLowercase].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4227
                matchingFonts isEmpty ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4228
                    "/ flush and try again - just in case, the font path has changed.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4229
                    screen flushListOfAvailableFonts.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4230
                    matchingFonts := screen listOfAvailableFonts select:[:f | fontPref match:f encoding asLowercase].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4231
                ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4232
                matchingFonts isEmpty ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4233
                    (Dialog
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4234
                        confirm:(resources
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4235
                                    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
  4236
                                      with:fontPref) withCRs)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4237
                    ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4238
                        switch := false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4239
                    ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4240
                ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4241
                    answer := Dialog
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4242
                                confirmWithCancel:(resources
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4243
                                                        string:'menu font is not %1-encoded.\\Change it ?'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4244
                                                        with:fontPref) withCRs
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4245
                                           labels:(resources
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4246
                                                        array:#('Cancel' 'No' 'Yes'))
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4247
                                           default:3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4248
                    answer isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4249
                        switch := false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4250
                    ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4251
                        answer ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4252
                            switch := (requestor fontBoxForEncoding:fontPref)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4253
                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4254
                    ].
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
            switch ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4259
                Transcript showCR:'change language to ' , newLanguage , ' ...'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4260
                Smalltalk language:language asSymbol territory:territory asSymbol.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4261
                "/ ResourcePack flushCachedResourcePacks - already done by language-change
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4262
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4263
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4264
        switch ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4265
            requestor reopenLauncher.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4266
            DebugView newDebugger.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4267
        ]
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4268
    ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4269
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4270
        addHelpButtonFor:'Launcher/languageSetting.html'.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4271
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4272
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4273
7431
3f81f2ed64ed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7332
diff changeset
  4274
    "Modified: / 09-09-1996 / 22:43:27 / stefan"
3f81f2ed64ed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7332
diff changeset
  4275
    "Modified: / 19-10-2006 / 22:17:01 / cg"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4276
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4277
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4278
memorySettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4279
    "open a dialog on objectMemory related settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4280
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4281
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4282
    |box igcLimit igcFreeLimit igcFreeAmount newSpaceSize
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4283
     compressLimit
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4284
     oldIncr component fields codeLimit codeTrigger stackLimit resources
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4285
     fastMoreLimit maxOldSpace models info acceptChannel|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4286
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4287
    acceptChannel := false asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4288
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4289
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4290
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4291
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4292
    "/ extract relevant system settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4293
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4294
    igcLimit := ObjectMemory incrementalGCLimit asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4295
    igcFreeLimit := ObjectMemory freeSpaceGCLimit asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4296
    igcFreeAmount := ObjectMemory freeSpaceGCAmount asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4297
    newSpaceSize := ObjectMemory newSpaceSize asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4298
    oldIncr := ObjectMemory oldSpaceIncrement asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4299
    compressLimit := ObjectMemory oldSpaceCompressLimit asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4300
    codeLimit := ObjectMemory dynamicCodeLimit asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4301
    codeTrigger := ObjectMemory dynamicCodeGCTrigger asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4302
    stackLimit := Process defaultMaximumStackSize asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4303
    fastMoreLimit := (ObjectMemory fastMoreOldSpaceLimit:-1) asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4304
    maxOldSpace := ObjectMemory maxOldSpace asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4305
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4306
    models := OrderedCollection new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4307
    info := OrderedCollection new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4308
    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
  4309
    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
  4310
    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
  4311
    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
  4312
    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
  4313
    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
  4314
    models add:oldIncr.         info add:#(number      'Increase oldSpace in chunks of this size'                      'Oldspace Increment:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4315
    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
  4316
    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
  4317
    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
  4318
    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
  4319
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4320
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4321
    "/ create a box on those values ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4322
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4323
    fields := OrderedCollection new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4324
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4325
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4326
    box label:(resources string:'Memory Manager Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4327
13735
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  4328
    box 
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  4329
        addTextLabel:'Warning - invalid settings may result in failures or poor performance
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  4330
' , 'You have been warned' allBold , '.' 
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  4331
        adjust:#left.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4332
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4333
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4334
    models with:info do:[:m :i |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4335
        |lbl descr conv|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4336
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4337
        conv := i at:1.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4338
        lbl := i at:3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4339
        descr := i at:2.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4340
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4341
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4342
                    addLabelledInputField:(resources string:lbl)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4343
                    adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4344
                    on:nil "/ newSpaceSize
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4345
                    tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4346
                    separateAtX:0.7.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4347
        component acceptOnLeave:false.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4348
"/        component converter:(PrintConverter new perform:conv).
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4349
        component model:((TypeConverter on:m) perform:conv).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4350
        component acceptChannel:acceptChannel.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4351
        fields add:component.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4352
13735
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  4353
        box addTextLabel:descr adjust:#left.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4354
        box addHorizontalLine.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4355
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4356
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4357
    ObjectMemory supportsJustInTimeCompilation ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4358
        (fields at:9) disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4359
        (fields at:10) disable.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4360
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4361
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4362
    box addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4363
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4364
        addHelpButtonFor:'Launcher/memorySettings.html'.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4365
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4366
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4367
    "/ show the box ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4368
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4369
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4370
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4371
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4372
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4373
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4374
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4375
        acceptChannel value:true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4376
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4377
        igcFreeAmount value ~~ ObjectMemory freeSpaceGCAmount ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4378
            ObjectMemory freeSpaceGCAmount:igcFreeAmount value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4379
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4380
        igcFreeLimit value ~~ ObjectMemory freeSpaceGCLimit ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4381
            ObjectMemory freeSpaceGCLimit:igcFreeLimit value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4382
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4383
        igcLimit value ~~ ObjectMemory incrementalGCLimit ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4384
            ObjectMemory incrementalGCLimit:igcLimit value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4385
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4386
        newSpaceSize value ~~ ObjectMemory newSpaceSize ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4387
            ObjectMemory newSpaceSize:newSpaceSize value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4388
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4389
        oldIncr value ~~ ObjectMemory oldSpaceIncrement ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4390
            ObjectMemory oldSpaceIncrement:oldIncr value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4391
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4392
        stackLimit value ~~ Process defaultMaximumStackSize ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4393
            Process defaultMaximumStackSize:stackLimit value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4394
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4395
        fastMoreLimit value ~~ (ObjectMemory fastMoreOldSpaceLimit:-1) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4396
            ObjectMemory fastMoreOldSpaceLimit:fastMoreLimit value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4397
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4398
        maxOldSpace value ~~ ObjectMemory maxOldSpace ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4399
            ObjectMemory maxOldSpace:maxOldSpace value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4400
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4401
        ObjectMemory oldSpaceCompressLimit:compressLimit value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4402
        ObjectMemory dynamicCodeLimit:codeLimit value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4403
        ObjectMemory dynamicCodeGCTrigger:codeTrigger value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4404
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4405
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4406
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4407
    "Modified: 27.2.1997 / 16:50:12 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4408
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4409
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4410
messageSettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4411
    "open a dialog on infoMessage related settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4412
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4413
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4414
    |box vmInfo vmErrors displayErrors classInfos resources|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4415
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4416
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4417
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4418
    vmInfo := ObjectMemory infoPrinting asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4419
    vmErrors := ObjectMemory debugPrinting asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4420
    classInfos := Object infoPrinting asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4421
    displayErrors := DeviceWorkstation errorPrinting asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4422
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4423
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4424
    box label:(resources string:'Messages').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4425
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4426
    box addCheckBox:(resources string:'VM Info Messages') on:vmInfo.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4427
    box addCheckBox:(resources string:'VM Error Messages') on:vmErrors.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4428
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4429
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4430
    box addCheckBox:(resources string:'Display Error Messages (Xlib, Xtlib, WinAPI ...)') on:displayErrors.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4431
    box addCheckBox:(resources string:'Other Info Messages') on:classInfos.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4432
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4433
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4434
    box addHelpButtonFor:'Launcher/messageSettings.html'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4435
    box addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4436
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4437
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4438
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4439
        ObjectMemory infoPrinting:vmInfo value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4440
        ObjectMemory debugPrinting:vmErrors value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4441
        Object infoPrinting:classInfos value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4442
        DeviceWorkstation errorPrinting:displayErrors value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4443
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4444
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4445
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4446
    "Modified: 27.1.1997 / 17:46:01 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4447
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4448
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4449
miscSettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4450
    "open a dialog on misc other settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4451
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4452
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4453
    |box pos pos2 check butt shadows takeFocus focusFollowsMouse returnFocus
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4454
     hostNameInLabel showAccelerators
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4455
     preemptive dynamicPrios hostNameInLabelHolder resources
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4456
     activateOnClick opaqueVariablePanelResize opaqueTableColumnResize currentUserPrefs
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4457
     beepEnabled newWindowLabelFormat|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4458
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4459
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4460
    currentUserPrefs := UserPreferences current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4461
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4462
    "/
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4463
    "/ extract relevant system settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4464
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4465
    shadows := PopUpView shadows asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4466
    beepEnabled := currentUserPrefs beepEnabled asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4467
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4468
    hostNameInLabel := StandardSystemView includeHostNameInLabel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4469
    hostNameInLabelHolder := hostNameInLabel asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4470
    returnFocus := StandardSystemView returnFocusWhenClosingModalBoxes asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4471
    takeFocus := StandardSystemView takeFocusWhenMapped asValue.
9941
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4472
    focusFollowsMouse := currentUserPrefs focusFollowsMouse asValue.
13761
062e30fef79c Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 13735
diff changeset
  4473
    activateOnClick := (Screen current activateOnClick:nil) asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4474
    opaqueVariablePanelResize := currentUserPrefs opaqueVariablePanelResizing asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4475
    opaqueTableColumnResize := currentUserPrefs opaqueTableColumnResizing asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4476
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4477
    showAccelerators := MenuView showAcceleratorKeys asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4478
    preemptive := Processor isTimeSlicing asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4479
    dynamicPrios := Processor supportDynamicPriorities asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4480
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4481
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4482
    "/ create a box on those values ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4483
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4484
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4485
    box label:(resources string:'Other settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4486
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4487
    box addCheckBox:(resources string:'Shadows under PopUp Views') on:shadows.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4488
    box addCheckBox:(resources string:'Beeper enabled') on:beepEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4489
    box addCheckBox:(resources string:'Boxes Return Focus to Previously Active View') on:returnFocus.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4490
    box addCheckBox:(resources string:'Views Catch Focus when Mapped') on:takeFocus.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4491
    pos := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4492
    check := box addCheckBox:(resources string:'Hostname in Window Labels') on:hostNameInLabelHolder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4493
    check width:0.6.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4494
    pos2 := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4495
    box yPosition:pos.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4496
    butt := box addComponent:(Button label:(resources string:'Format...')
9941
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4497
               action:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4498
                       |newFormat|
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4499
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4500
                       newFormat := Dialog request:
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4501
                                        '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
  4502
                                           withCRs initialAnswer:StandardSystemView windowLabelFormat.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4503
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4504
                       newFormat size > 0 ifTrue:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4505
                           newWindowLabelFormat := newFormat
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4506
                       ].
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4507
                      ]).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4508
    box makeTabable:butt.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4509
    butt left:0.6; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4510
    box yPosition:(box yPosition max:pos2).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4511
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4512
    box addCheckBox:(resources string:'Show Accelerator Keys in Menus') on:showAccelerators.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4513
    box addCheckBox:(resources string:'Raise & Activate Windows on Click') on:activateOnClick.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4514
    box addCheckBox:(resources string:'Focus Follows Mouse') on:focusFollowsMouse.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4515
    box addCheckBox:(resources string:'Opaque Variable Panel Resizing') on:opaqueVariablePanelResize.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4516
    box addCheckBox:(resources string:'Opaque Table Column Resizing') on:opaqueTableColumnResize.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4517
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4518
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4519
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4520
    box addCheckBox:(resources string:'Preemptive Scheduling') on:preemptive.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4521
    box leftIndent:20.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4522
    check := box addCheckBox:(resources string:'Dynamic Priorities') on:dynamicPrios.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4523
    check enableChannel:preemptive.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4524
    box leftIndent:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4525
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4526
    box addHorizontalLine.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4527
    box
9941
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4528
        addHelpButtonFor:'Launcher/miscSettings.html';
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4529
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4530
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4531
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4532
    "/ show the box ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4533
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4534
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4535
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4536
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4537
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4538
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4539
    box accepted ifTrue:[
9941
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4540
        PopUpView shadows:shadows value.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4541
        (hostNameInLabelHolder value ~= hostNameInLabel
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4542
        or:[newWindowLabelFormat ~= StandardSystemView windowLabelFormat]) ifTrue:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4543
            StandardSystemView includeHostNameInLabel:hostNameInLabelHolder value.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4544
            newWindowLabelFormat notNil ifTrue:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4545
                StandardSystemView windowLabelFormat:newWindowLabelFormat
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4546
            ].
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4547
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4548
            Screen allScreens do:[:aDisplay |
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4549
                aDisplay allViewsDo:[:aView |
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4550
                    |l|
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4551
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4552
                    aView isTopView ifTrue:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4553
                        l := aView label.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4554
                        l notNil ifTrue:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4555
                            aView label:(l , ' '); label:l.  "/ force a change
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4556
                        ]
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4557
                    ]
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
        currentUserPrefs opaqueVariablePanelResizing:opaqueVariablePanelResize value.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4563
        currentUserPrefs opaqueTableColumnResizing:opaqueTableColumnResize value.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4564
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4565
        currentUserPrefs beepEnabled:beepEnabled 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
        StandardSystemView returnFocusWhenClosingModalBoxes:returnFocus value.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4568
        StandardSystemView takeFocusWhenMapped:takeFocus value.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4569
        currentUserPrefs focusFollowsMouse:focusFollowsMouse value.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4570
        Screen current activateOnClick:(activateOnClick value).
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4571
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4572
        MenuView showAcceleratorKeys:showAccelerators value.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4573
        Processor isTimeSlicing ~~ preemptive value ifTrue:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4574
            preemptive value ifTrue:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4575
                Processor startTimeSlicing
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4576
            ] ifFalse:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4577
                Processor stopTimeSlicing
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4578
            ]
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4579
        ].
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4580
        Processor supportDynamicPriorities ~~ dynamicPrios value ifTrue:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4581
            Processor supportDynamicPriorities:dynamicPrios value
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4582
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4583
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4584
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4585
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4586
    "Modified: / 9.9.1996 / 22:43:36 / stefan"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4587
    "Modified: / 20.5.1999 / 18:33:55 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4588
    "Modified: / 3.12.1999 / 17:11:38 / ps"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4589
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4590
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4591
printerSettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4592
    "open a dialog on printer related settings; returns true if accepted.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4593
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4594
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4595
    |box accepted
5181
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4596
     possiblePrinters possibleTypes printerType printCommand printFile
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4597
     pageFormat landscape updater
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4598
     formatLabel formatComponent landscapeLabel landscapeComponent
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4599
     topMargin leftMargin rightMargin bottomMargin unitList unit
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4600
     topMarginComponent leftMarginComponent
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4601
     rightMarginComponent
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4602
     bottomMarginComponent supportsColor supportsColorComponent
5181
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4603
     y y1 commandListPop printOutField component commandList row resources|
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4604
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4605
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4606
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4607
    possiblePrinters := PrinterStream withAllSubclasses asArray.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4608
    possibleTypes := possiblePrinters collect:[:cls | cls printerTypeName].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4609
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4610
    printerType := SelectionInList new list:(resources array:possibleTypes).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4611
    printerType selectionIndex:(possiblePrinters identityIndexOf:Printer).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4612
    printCommand := Printer printCommand asValue.
5181
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4613
    printFile := (Printer printFilename ? '') asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4614
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4615
    pageFormat := SelectionInList new list:(Printer defaultPageFormats).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4616
    pageFormat selection:(Printer pageFormat).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4617
    landscape := Printer landscape asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4618
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4619
    topMargin := Printer topMargin asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4620
    leftMargin := Printer leftMargin asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4621
    rightMargin := Printer rightMargin asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4622
    bottomMargin := Printer bottomMargin asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4623
    supportsColor := Printer supportsColor asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4624
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4625
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4626
    box label:(resources string:'Printer Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4627
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4628
"/ either use a popUpList ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4629
"/    box addPopUpList:(resources string:'printer type:') on:printerType.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4630
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4631
"/ or a comboList;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4632
"/ which one looks better ?
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4633
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4634
    component := box addTextLabel:(resources string:'Printer Type:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4635
    component width:0.25; adjust:#right; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4636
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4637
    component := box addComboListOn:printerType tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4638
    component aspect:#selectionIndex; changeMessage:#selectionIndex:; useIndex:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4639
    component width:0.75; left:0.25.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4640
"/ end of question
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4641
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4642
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4643
    component := box addTextLabel:(resources string:'Print Command:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4644
    component width:0.25; adjust:#right; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4645
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4646
    commandListPop := box addComboBoxOn:printCommand tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4647
"/    commandListPop := box addInputFieldOn:printCommand tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4648
    commandListPop width:0.75; left:0.25; immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4649
    "/ some common print commands ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4650
6637
874c6de40070 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6621
diff changeset
  4651
    commandList := resources string:'PRINT_COMMANDS' default:nil.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4652
    commandList isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4653
        commandList := PrinterStream defaultCommands.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4654
        commandList isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4655
            commandList := #('lpr'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4656
                             'lp'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4657
                            ).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4658
        ]
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4659
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4660
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4661
    commandListPop list:commandList.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4662
5181
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4663
    y := box yPosition.
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4664
    component := box addTextLabel:(resources string:'Print to File:').
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4665
    component width:0.25; adjust:#right; borderWidth:0.
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4666
    box yPosition:y.
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4667
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4668
    printOutField := box addInputFieldOn:printFile tabable:true.
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4669
    printOutField width:0.75; left:0.25; immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4670
    printFile
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4671
        onChangeEvaluate:
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4672
            [
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4673
                printFile value size > 0 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4674
                    commandListPop disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4675
                ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4676
                    commandListPop enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4677
                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4678
            ].
5181
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4679
    printFile changed.
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4680
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4681
    box addVerticalSpace; addHorizontalLine; addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4682
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4683
    row := OrderedCollection new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4684
    row add:(formatLabel := Label label:(resources string:'Page Format:')).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4685
    formatLabel borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4686
    row add:(formatComponent := PopUpList on:pageFormat).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4687
    formatComponent label:'unknown'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4688
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4689
    row add:(landscapeLabel := Label label:(resources string:'Landscape:')).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4690
    landscapeLabel borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4691
    row add:(landscapeComponent := CheckToggle on:landscape).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4692
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4693
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4694
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4695
        addRow:(1 to:2)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4696
        fromX:0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4697
        toX:0.5
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4698
        collect:[:idx | row at:idx]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4699
        tabable:false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4700
        horizontalLayout:#leftSpace
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4701
        verticalLayout:#center.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4702
    y1 := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4703
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4704
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4705
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4706
        addRow:(3 to:4)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4707
        fromX:0.5
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4708
        toX:1.0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4709
        collect:[:idx | row at:idx]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4710
        tabable:false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4711
        horizontalLayout:#leftSpace
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4712
        verticalLayout:#center.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4713
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4714
    box yPosition:(box yPosition max:y1).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4715
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4716
    box makeTabable:(formatComponent).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4717
    box makeTabable:(landscapeComponent).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4718
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4719
    box addVerticalSpace; addHorizontalLine; addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4720
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4721
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4722
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4723
    topMarginComponent := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4724
        addLabelledInputField:(resources string:'Top Margin:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4725
        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4726
        on:nil "/ topMargin
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4727
        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4728
        from:0.0 to:0.5
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4729
        separateAtX:0.6.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4730
    topMarginComponent converter:(PrintConverter new initForNumber).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4731
    topMarginComponent model:topMargin.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4732
    y1 := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4733
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4734
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4735
    unitList := SelectionInList with:#('inch' 'mm').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4736
    unitList selectionIndex:1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4737
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4738
    component := box addComponent:(PopUpList on:unitList).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4739
    component
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4740
        left:0.6;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4741
        width:0.3.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4742
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4743
    box yPosition:y1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4744
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4745
    leftMarginComponent := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4746
        addLabelledInputField:(resources string:'Left Margin:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4747
        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4748
        on:nil "/ leftMargin
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4749
        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4750
        from:0.0 to:0.5
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4751
        separateAtX:0.6.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4752
    leftMarginComponent converter:(PrintConverter new initForNumber).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4753
    leftMarginComponent model:leftMargin.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4754
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4755
    rightMarginComponent := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4756
        addLabelledInputField:(resources string:'Right Margin:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4757
        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4758
        on:nil "/ rightMargin
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4759
        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4760
        from:0.0 to:0.5
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4761
        separateAtX:0.6.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4762
    rightMarginComponent converter:(PrintConverter new initForNumber).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4763
    rightMarginComponent model:rightMargin.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4764
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4765
    bottomMarginComponent := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4766
        addLabelledInputField:(resources string:'Bottom Margin:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4767
        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4768
        on:nil "/ bottomMargin
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4769
        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4770
        from:0.0 to:0.5
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4771
        separateAtX:0.6.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4772
    bottomMarginComponent converter:(PrintConverter new initForNumber).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4773
    bottomMarginComponent model:bottomMargin.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4774
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4775
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4776
    supportsColorComponent := box addCheckBox:(resources string:'Color Printer') on:supportsColor.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4777
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4778
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4779
    updater := [ |p fg hasPageSize hasMargins|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4780
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4781
                       printerType selectionIndex ~~ 0 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4782
                           p := possiblePrinters at:(printerType selectionIndex).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4783
                           hasPageSize := p supportsPageSizes.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4784
                           hasMargins := p supportsMargins.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4785
                       ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4786
                           hasPageSize := false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4787
                           hasMargins := false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4788
                       ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4789
                       hasPageSize ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4790
                          fg := Button new foregroundColor.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4791
                          formatComponent enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4792
                          landscapeComponent enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4793
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4794
                          formatComponent label:p pageFormat.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4795
                          pageFormat value:(p pageFormat).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4796
                          landscape value:(p landscape).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4797
                       ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4798
                          fg := Button new disabledForegroundColor.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4799
                          formatComponent disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4800
                          landscapeComponent disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4801
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4802
                          formatComponent label:'unknown'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4803
                          landscape value:nil.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4804
                       ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4805
                       hasMargins ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4806
                          unitList selectionIndex == 2 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4807
                              unit := #mm
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4808
                          ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4809
                              unit := #inch
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4810
                          ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4811
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4812
                          topMargin value:(UnitConverter convert:p topMargin from:#inch to:unit).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4813
                          leftMargin value:(UnitConverter convert:p leftMargin from:#inch to:unit).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4814
                          rightMargin value:(UnitConverter convert:p rightMargin from:#inch to:unit).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4815
                          bottomMargin value:(UnitConverter convert:p bottomMargin from:#inch to:unit).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4816
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4817
                          topMarginComponent enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4818
                          leftMarginComponent enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4819
                          rightMarginComponent enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4820
                          bottomMarginComponent enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4821
                       ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4822
                          topMarginComponent disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4823
                          leftMarginComponent disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4824
                          rightMarginComponent disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4825
                          bottomMarginComponent disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4826
                       ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4827
                       formatLabel foregroundColor:fg.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4828
                       landscapeLabel foregroundColor:fg.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4829
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4830
                       p notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4831
                           commandList := p defaultCommands.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4832
                           commandList notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4833
                                commandListPop list:commandList
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4834
                           ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4835
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4836
                           printCommand value:(p printCommand).
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
                       p supportsPostscript ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4839
                           supportsColorComponent disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4840
                           supportsColor value:false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4841
                       ] ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4842
                           supportsColorComponent enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4843
                           supportsColor value:(Printer supportsColor).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4844
                       ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4845
                     ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4846
    unitList onChangeEvaluate:updater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4847
    printerType onChangeEvaluate:updater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4848
    updater value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4849
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4850
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4851
    box addVerticalSpace;
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4852
        addHelpButtonFor:'Launcher/printerSettings.html';
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4853
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4854
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4855
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4856
    (accepted := box accepted) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4857
        Printer := possiblePrinters at:(printerType selectionIndex).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4858
        Printer printCommand:printCommand value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4859
        Printer printFilename:(printFile value isEmptyOrNil ifTrue:[nil] ifFalse:[printFile value]).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4860
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4861
        Printer supportsPageSizes ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4862
            Printer pageFormat:(pageFormat selection).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4863
            Printer landscape:(landscape value).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4864
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4865
        Printer supportsMargins ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4866
            unitList selectionIndex == 2 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4867
                unit := #mm
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4868
            ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4869
                unit := #inch
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4870
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4871
            Printer topMargin:(UnitConverter convert:topMargin value from:unit to:#inch).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4872
            Printer leftMargin:(UnitConverter convert:leftMargin value from:unit to:#inch).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4873
            Printer rightMargin:(UnitConverter convert:rightMargin value from:unit to:#inch).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4874
            Printer bottomMargin:(UnitConverter convert:bottomMargin value from:unit to:#inch).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4875
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4876
        Printer supportsPostscript ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4877
            Printer supportsColor:supportsColor value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4878
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4879
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4880
    box destroy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4881
    ^ accepted
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4882
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4883
    "Modified: 9.9.1996 / 22:43:51 / stefan"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4884
    "Modified: 28.2.1997 / 14:00:13 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4885
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4886
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4887
saveSettings
5465
2c1dc7101e03 *** empty log message ***
ca
parents: 5464
diff changeset
  4888
    SettingsDialog saveSettingsWithoutAskingForFile.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4889
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4890
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4891
sourceAndDebuggerSettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4892
    "open a dialog on source&debugger other settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4893
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4894
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4895
    |box check butt setupButt logDoits updChanges changeFileName
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4896
     useManager hasManager cvsIsSetup
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4897
     repository repositoryHolder localSourceFirst
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4898
     sourceCacheDir cacheEntry
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4899
     component localCheck oldIndent nm fn manager
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4900
     showErrorNotifier showVerboseStack
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4901
     syntaxColoring fullSelectorCheck autoFormat
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4902
     resources pos currentUserPrefs checkClassesWhenCheckingIn checkClassesBox|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4903
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4904
    currentUserPrefs := UserPreferences current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4905
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4906
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4907
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4908
    "/
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4909
    "/ extract relevant system settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4910
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4911
    logDoits := Smalltalk logDoits asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4912
    updChanges := Class updatingChanges asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4913
    changeFileName := ObjectMemory nameForChanges asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4914
4840
4f74aeb5e4d2 autoload is understood by all classes (dummy if already loaded)
Claus Gittinger <cg@exept.de>
parents: 4766
diff changeset
  4915
    AbstractSourceCodeManager notNil ifTrue:[
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4916
        AbstractSourceCodeManager autoload.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4917
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4918
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4919
    hasManager := AbstractSourceCodeManager notNil
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4920
                  and:[AbstractSourceCodeManager isLoaded].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4921
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4922
    repositoryHolder := '' asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4923
    hasManager ifTrue:[
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4924
        useManager := (manager := Smalltalk at:#SourceCodeManager) notNil asValue.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4925
        localSourceFirst := Class tryLocalSourceFirst asValue.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4926
        manager notNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4927
            manager forgetDisabledModules.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4928
            repository := manager repositoryName.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4929
            repository notNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4930
                repositoryHolder := repository asValue.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4931
            ] ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4932
                repositoryHolder := '' asValue.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4933
            ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4934
        ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4935
        cvsIsSetup := true.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4936
    ] ifFalse:[
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4937
        useManager := false.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4938
        localSourceFirst := false.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4939
        cvsIsSetup := false.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4940
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4941
    cvsIsSetup := cvsIsSetup asValue.
4566
af369740e2bc Replace referneces to Exception.
Stefan Vogel <sv@exept.de>
parents: 4552
diff changeset
  4942
    showErrorNotifier := (NoHandlerError emergencyHandler == AbstractLauncherApplication notifyingEmergencyHandler) asValue.
8150
f7143e697cbf *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8117
diff changeset
  4943
    showVerboseStack := (currentUserPrefs verboseBacktraceInDebugger) asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4944
    syntaxColoring := currentUserPrefs syntaxColoring asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4945
    fullSelectorCheck := currentUserPrefs fullSelectorCheck asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4946
    autoFormat := currentUserPrefs autoFormatting asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4947
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4948
    sourceCacheDir := nil asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4949
    checkClassesWhenCheckingIn := (currentUserPrefs at:#checkClassesWhenCheckingIn ifAbsent:true) asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4950
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4951
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4952
    "/ create a box on those values ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4953
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4954
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4955
    box label:(resources string:'Source & Debugger Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4956
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4957
    box addCheckBox:(resources string:'Log compiles in Changefile') on:updChanges.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4958
    box addCheckBox:(resources string:'Log doIts in Changefile') on:logDoits.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4959
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4960
    component := box
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4961
                    addLabelledInputField:(resources string:'Changefile Name:')
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4962
                    adjust:#right
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4963
                    on:changeFileName
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4964
                    tabable:true
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4965
                    separateAtX:0.4.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4966
    component immediateAccept:true; acceptOnLeave:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4967
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4968
"/    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4969
"/    component := box addTextLabel:(resources string:'change file name:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4970
"/    component width:0.5; adjust:#right; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4971
"/    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4972
"/    component := box addInputFieldOn:changeFileName tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4973
"/    component width:0.5; left:0.5; immediateAccept:true; acceptOnLeave:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4974
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4975
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4976
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4977
    hasManager ifTrue:[
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4978
        pos := box yPosition.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4979
        check := box addCheckBox:(resources string:'Sourcecode Management') on:useManager.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4980
        check enableChannel:cvsIsSetup.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4981
        box makeTabable:check.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4982
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4983
        CVSSourceCodeManager notNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4984
            check width:0.6.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4985
            box yPosition:pos.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4986
            setupButt := box addComponent:(Button label:(resources string:'Setup...')
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4987
                       action:[|manager|
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4988
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4989
                               self cvsConfigurationDialog.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4990
                               manager := (Smalltalk at:#SourceCodeManager).
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4991
                               cvsIsSetup value:manager notNil.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4992
                               manager notNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4993
                                    repositoryHolder value: manager repositoryName.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4994
                                    sourceCacheDir value:(AbstractSourceCodeManager cacheDirectoryName).
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4995
                               ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4996
                              ]).
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4997
            setupButt enableChannel:useManager.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4998
            box makeTabable:setupButt.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  4999
            setupButt left:0.6; width:0.4.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5000
        ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5001
        oldIndent := box leftIndent.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5002
        box leftIndent:30.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5003
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5004
        box addVerticalSpace:10.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5005
"/        component := box
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5006
"/                        addLabelledInputField:(resources string:'CVS repository:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5007
"/                        adjust:#right
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5008
"/                        on:repositoryHolder
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5009
"/                        tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5010
"/                        separateAtX:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5011
"/        component immediateAccept:true; acceptOnLeave:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5012
"/        component enableChannel:useManager.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5013
"/        component readOnly:true.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5014
"/
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5015
        cacheEntry := box
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5016
                        addLabelledInputField:(resources string:'Source Cache Dir:')
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5017
                        adjust:#right
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5018
                        on:sourceCacheDir
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5019
                        tabable:true
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5020
                        separateAtX:0.5.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5021
        cacheEntry immediateAccept:true; acceptOnLeave:false.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5022
        cacheEntry enableChannel:useManager.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5023
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5024
        pos := box yPosition.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5025
        butt := Button label:(resources string:'Flush Cache now').
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5026
        butt action:[ box withWaitCursorDo:[ AbstractSourceCodeManager flushSourceCache ] ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5027
        box addComponent:butt tabable:true.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5028
        butt left:0.6; width:0.4; leftInset:0.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5029
        butt enableChannel:useManager.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5030
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5031
        butt := Button label:(resources string:'Condense Cache now').
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5032
        butt action:[ box withWaitCursorDo:[ AbstractSourceCodeManager condenseSourceCache ] ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5033
        box addComponent:butt tabable:true.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5034
        butt left:0.6; width:0.4; leftInset:0.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5035
        butt enableChannel:useManager.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5036
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5037
        localCheck := box addCheckBox:(resources string:'If Present, Use Local Source (Suppress Checkout)') on:localSourceFirst.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5038
        localCheck enableChannel:useManager.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5039
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5040
        checkClassesBox := box addCheckBox:(resources string:'Check for halt/error-Sends when Checking in') on:checkClassesWhenCheckingIn.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5041
        checkClassesBox enableChannel:useManager.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5042
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5043
        box leftIndent:oldIndent.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5044
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5045
        (AbstractSourceCodeManager isNil
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5046
        or:[AbstractSourceCodeManager defaultManager isNil]) ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5047
            useManager value:false.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5048
            "/ cacheEntry disable.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5049
            "/ localCheck enable.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5050
        ] ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5051
            sourceCacheDir value:(AbstractSourceCodeManager cacheDirectoryName).
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5052
        ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5053
        box addHorizontalLine.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5054
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5055
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5056
    pos := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5057
    check := box addCheckBox:(resources string:'Syntax Coloring') on:syntaxColoring.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5058
    check width:0.6.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5059
    box yPosition:pos.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5060
    butt := box addComponent:(Button label:(resources string:'Configure...') action:[self syntaxColorConfigurationDialog]).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5061
    box makeTabable:butt.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5062
    butt enableChannel:syntaxColoring.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5063
    butt left:0.6; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5064
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5065
    check := box addCheckBox:(resources string:'Immediate Selector Check') on:fullSelectorCheck.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5066
    check enableChannel:syntaxColoring.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5067
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5068
    pos := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5069
    check := box addCheckBox:(resources string:'Auto Format') on:autoFormat.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5070
    check width:0.6.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5071
    box yPosition:pos.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5072
    butt := box addComponent:(Button label:(resources string:'Configure...') action:[self formattingConfigurationDialog]).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5073
    box makeTabable:butt.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5074
    butt left:0.6; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5075
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5076
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5077
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5078
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5079
    box addCheckBox:(resources string:'Show Error Notifier before Opening Debugger') on:showErrorNotifier.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5080
    box addCheckBox:(resources string:'Verbose Backtrace by Default in Debugger') on:showVerboseStack.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5081
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5082
    box addHorizontalLine.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5083
    box
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5084
        addHelpButtonFor:'Launcher/sourceSettings.html';
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5085
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5086
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5087
    box maxExtent:1000@600.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5088
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5089
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5090
    "/ show the box ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5091
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5092
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5093
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5094
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5095
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5096
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5097
    box accepted ifTrue:[
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5098
        Smalltalk logDoits:logDoits value.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5099
        Class updateChanges:updChanges value.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5100
        ObjectMemory nameForChanges:(changeFileName value).
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5101
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5102
        (hasManager and:[useManager value]) ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5103
            manager isNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5104
                Smalltalk at:#SourceCodeManager put:(AbstractSourceCodeManager defaultManager).
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5105
                manager := Smalltalk at:#SourceCodeManager.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5106
            ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5107
            Class tryLocalSourceFirst:(localSourceFirst value).
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5108
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5109
            manager notNil ifTrue:[
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5110
"/                localSourceFirst value ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5111
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5112
                    nm := sourceCacheDir value.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5113
                    nm size > 0 ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5114
                        (fn := nm asFilename) exists ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5115
                            (self confirm:('CVS cache directory ''' , nm , ''' does not exist\create ?' withCRs)) ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5116
                                fn makeDirectory;
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5117
                                   makeReadableForAll;
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5118
                                   makeWritableForAll;
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5119
                                   makeExecutableForAll.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5120
                            ]
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5121
                        ].
13241
429439b91d57 Use #isWritableDirectory
Stefan Vogel <sv@exept.de>
parents: 13150
diff changeset
  5122
                        (fn isWritableDirectory and:[fn isReadable]) ifTrue:[
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5123
                            AbstractSourceCodeManager cacheDirectoryName:(sourceCacheDir value).
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5124
                        ] ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5125
                            self warn:'Invalid sourceCache directory.'
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5126
                        ]
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5127
                    ]
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5128
"/                ]
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5129
            ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5130
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5131
            repositoryHolder notNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5132
                repositoryHolder value size > 0 ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5133
                    manager notNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5134
                        manager initializeForRepository:repositoryHolder value.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5135
                    ]
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5136
                ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5137
            ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5138
        ] ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5139
            Smalltalk at:#SourceCodeManager put:nil
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5140
        ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5141
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5142
        showErrorNotifier value ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5143
            NoHandlerError emergencyHandler:nil
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5144
        ] ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5145
            NoHandlerError emergencyHandler:(AbstractLauncherApplication notifyingEmergencyHandler)
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5146
        ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5147
        currentUserPrefs verboseBacktraceInDebugger:(showVerboseStack value).
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5148
        currentUserPrefs syntaxColoring:syntaxColoring value.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5149
        currentUserPrefs at:#fullSelectorCheck put:fullSelectorCheck value.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5150
        currentUserPrefs autoFormatting:autoFormat value.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5151
14683
1fd9d79bd0e7 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14682
diff changeset
  5152
        currentUserPrefs at:#checkClassesWhenCheckingIn put:checkClassesWhenCheckingIn value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5153
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5154
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5155
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5156
    "Modified: / 09-09-1996 / 22:43:36 / stefan"
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5157
    "Created: / 17-01-1997 / 17:39:33 / cg"
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5158
    "Modified: / 16-04-1998 / 17:18:47 / ca"
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5159
    "Modified: / 09-02-2011 / 20:32:56 / cg"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5160
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5161
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5162
stcCompilerSettings
6539
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5163
    "open an extra dialog on stc-compiler related settings.
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5164
     Obsoleted by STCCompilerSettingsApp"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5165
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5166
    |box
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5167
     stcIncludes stcDefines stcOptions
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5168
     stcLibraries stcLibraryPath cc stc ccOptions
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5169
     linkCommand linkArgs
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5170
     component
5277
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5171
     canLoadBinaries
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5172
     resources|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5173
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5174
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5175
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5176
    canLoadBinaries := ObjectFileLoader notNil and:[ObjectFileLoader canLoadObjectFiles].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5177
6539
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5178
    stcIncludes := ParserFlags stcCompilationIncludes asValue.
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5179
    stcDefines := ParserFlags stcCompilationDefines asValue.
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5180
    stcOptions := ParserFlags stcCompilationOptions asValue.
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5181
    ccOptions := ParserFlags ccCompilationOptions asValue.
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5182
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5183
    cc := ParserFlags ccPath asValue.
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5184
    stc := ParserFlags stcPath asValue.
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5185
    linkCommand := ParserFlags linkCommand asValue.
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5186
    linkArgs := ParserFlags linkArgs asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5187
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5188
    ObjectFileLoader notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5189
        | t |
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5190
        (t := ParserFlags searchedLibraries) notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5191
            stcLibraries := (String fromStringCollection:t separatedBy:' ') asValue.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5192
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5193
        (t := ParserFlags libPath) notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5194
            stcLibraryPath := t asValue.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5195
        ]
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5196
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5197
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5198
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5199
    box label:(resources string:'STC Compilation Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5200
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5201
    ObjectFileLoader notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5202
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5203
                        addLabelledInputField:(resources string:'stc Command:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5204
                        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5205
                        on:stc
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5206
                        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5207
                        separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5208
        component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5209
        component preferredExtent:(100 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5210
        canLoadBinaries ifFalse:[component disable].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5211
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5212
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5213
                        addLabelledInputField:(resources string:'stc Options:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5214
                        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5215
                        on:stcOptions
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5216
                        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5217
                        separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5218
        component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5219
        component preferredExtent:(250 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5220
        canLoadBinaries ifFalse:[component disable].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5221
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5222
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5223
                        addLabelledInputField:(resources string:'cc Command:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5224
                        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5225
                        on:cc
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5226
                        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5227
                        separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5228
        component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5229
        component preferredExtent:(150 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5230
        canLoadBinaries ifFalse:[component disable].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5231
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5232
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5233
                        addLabelledInputField:(resources string:'cc Options:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5234
                        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5235
                        on:ccOptions
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5236
                        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5237
                        separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5238
        component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5239
        component preferredExtent:(250 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5240
        canLoadBinaries ifFalse:[component disable].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5241
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5242
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5243
                        addLabelledInputField:(resources string:'Include Directories:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5244
                        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5245
                        on:stcIncludes
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5246
                        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5247
                        separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5248
        component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5249
        component preferredExtent:(250 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5250
        canLoadBinaries ifFalse:[component disable].
5277
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5251
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5252
"/        box addVerticalSpace.
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5253
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5254
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5255
                        addLabelledInputField:(resources string:'Defines:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5256
                        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5257
                        on:stcDefines
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5258
                        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5259
                        separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5260
        component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5261
        component preferredExtent:(250 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5262
        canLoadBinaries ifFalse:[component disable].
5277
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5263
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5264
"/        box addVerticalSpace.
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
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5268
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5269
                        addLabelledInputField:(resources string:'Link Command:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5270
                        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5271
                        on:linkCommand
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5272
                        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5273
                        separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5274
        component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5275
        component preferredExtent:(250 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5276
        canLoadBinaries ifFalse:[component disable].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5277
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5278
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5279
                        addLabelledInputField:(resources string:'Link Args:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5280
                        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5281
                        on:linkArgs
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5282
                        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5283
                        separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5284
        component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5285
        component preferredExtent:(250 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5286
        canLoadBinaries ifFalse:[component disable].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5287
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5288
        stcLibraries notNil ifTrue:[
5277
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5289
"/            box addVerticalSpace.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5290
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5291
            component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5292
                            addLabelledInputField:(resources string:'C-libraries:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5293
                            adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5294
                            on:stcLibraries
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5295
                            tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5296
                            separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5297
            component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5298
            component preferredExtent:(250 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5299
            canLoadBinaries ifFalse:[component disable].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5300
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5301
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5302
        stcLibraryPath notNil ifTrue:[
5277
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5303
"/            box addVerticalSpace.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5304
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5305
            component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5306
                            addLabelledInputField:(resources string:'stc LibPath:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5307
                            adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5308
                            on:stcLibraryPath
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5309
                            tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5310
                            separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5311
            component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5312
            component preferredExtent:(250 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5313
            canLoadBinaries ifFalse:[component disable].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5314
        ].
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5315
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5316
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5317
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5318
        addHelpButtonFor:'Launcher/compilerSettings.html';
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5319
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5320
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5321
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5322
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5323
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5324
        ParserFlags stcCompilationIncludes:stcIncludes value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5325
        ParserFlags stcCompilationDefines:stcDefines value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5326
        ParserFlags stcCompilationOptions:stcOptions value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5327
        ParserFlags ccCompilationOptions:ccOptions value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5328
        ParserFlags ccPath:cc value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5329
        stc value ~= ParserFlags stcPath ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5330
            ParserFlags stcPath:stc value
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5331
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5332
        ParserFlags linkCommand:linkCommand value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5333
        ParserFlags linkArgs:linkArgs value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5334
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5335
        ObjectFileLoader notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5336
            stcLibraries notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5337
                ParserFlags searchedLibraries:(stcLibraries value asCollectionOfWords).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5338
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5339
            stcLibraryPath notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5340
                ParserFlags libPath:(stcLibraryPath value).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5341
            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5342
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5343
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5344
    box destroy
4386
9e11f7a0936e change the settingsApplication list
penk
parents: 4385
diff changeset
  5345
"
9e11f7a0936e change the settingsApplication list
penk
parents: 4385
diff changeset
  5346
    self stcCompilerSettings
9e11f7a0936e change the settingsApplication list
penk
parents: 4385
diff changeset
  5347
"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5348
    "Modified: / 10.9.1995 / 19:19:18 / claus"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5349
    "Modified: / 9.9.1996 / 22:42:47 / stefan"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5350
    "Created: / 2.10.1998 / 16:27:49 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5351
    "Modified: / 21.10.1998 / 19:15:10 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5352
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5353
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5354
toolSettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  5355
    "open a dialog on tool settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  5356
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5357
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5358
    |box resources currentUserPrefs in acceptChannel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5359
     useNewInspector useNewChangesBrowser useNewSystemBrowser useNewVersionDiffBrowser
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5360
     useNewFileBrowser showClockInLauncher showClock launcher
15495
41d4ea9d99d8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15385
diff changeset
  5361
     transcriptBufferSize useNewFileDialog useNewSettingsApplication useProcessMonitorV2
41d4ea9d99d8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15385
diff changeset
  5362
     currentTranscript|
41d4ea9d99d8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15385
diff changeset
  5363
41d4ea9d99d8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15385
diff changeset
  5364
    currentTranscript := Transcript current.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5365
    currentUserPrefs := UserPreferences current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5366
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5367
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5368
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5369
    "/
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5370
    "/ extract relevant system settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5371
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5372
    useNewInspector := currentUserPrefs useNewInspector asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5373
    useNewChangesBrowser := currentUserPrefs useNewChangesBrowser asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5374
    useNewSystemBrowser := currentUserPrefs useNewSystemBrowser asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5375
    showClockInLauncher := currentUserPrefs showClockInLauncher asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5376
    useNewVersionDiffBrowser := currentUserPrefs useNewVersionDiffBrowser asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5377
    useNewFileBrowser := currentUserPrefs useNewFileBrowser asValue.
4385
47c861cdeb58 allow change of settings dialog delction and use new FileDialog
penk
parents: 4382
diff changeset
  5378
    useNewFileDialog := currentUserPrefs useNewFileDialog asValue.
4386
9e11f7a0936e change the settingsApplication list
penk
parents: 4385
diff changeset
  5379
    useNewSettingsApplication := currentUserPrefs useNewSettingsApplication asValue.
4464
997576abcb7f add ProcessMonitorV2 access from menu dependent on userPreferences
penk
parents: 4456
diff changeset
  5380
    useProcessMonitorV2 := currentUserPrefs useProcessMonitorV2 asValue.
15495
41d4ea9d99d8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15385
diff changeset
  5381
    currentTranscript isExternalStream ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5382
        transcriptBufferSize := TextCollector defaultLineLimit
5629
2cb05ef96502 care for nonPosStream transcript
Claus Gittinger <cg@exept.de>
parents: 5623
diff changeset
  5383
    ] ifFalse:[
15495
41d4ea9d99d8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15385
diff changeset
  5384
        transcriptBufferSize := currentTranscript lineLimit printString asValue.
5629
2cb05ef96502 care for nonPosStream transcript
Claus Gittinger <cg@exept.de>
parents: 5623
diff changeset
  5385
    ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5386
    acceptChannel := false asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5387
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5388
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5389
    "/ create a box on those values ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5390
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5391
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5392
    box label:(resources string:'Tool Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5393
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5394
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5395
    box addCheckBox:(resources string:'Use the New System Browser') on:useNewSystemBrowser.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5396
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5397
    box addCheckBox:(resources string:'Use the New VersionDiff Browser') on:useNewVersionDiffBrowser.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5398
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5399
    (Smalltalk at:#FileBrowserV2) isBehavior ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5400
        box addCheckBox:(resources string:'Use the New File Browser') on:useNewFileBrowser.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5401
        box addHorizontalLine.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5402
    ].
4385
47c861cdeb58 allow change of settings dialog delction and use new FileDialog
penk
parents: 4382
diff changeset
  5403
    (Smalltalk at:#FileDialog) isBehavior ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5404
        box addCheckBox:(resources string:'Use the New File Dialog') on:useNewFileDialog.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5405
        box addHorizontalLine.
4385
47c861cdeb58 allow change of settings dialog delction and use new FileDialog
penk
parents: 4382
diff changeset
  5406
    ].
47c861cdeb58 allow change of settings dialog delction and use new FileDialog
penk
parents: 4382
diff changeset
  5407
    (Smalltalk at:#SettingsDialog) isBehavior ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5408
        box addCheckBox:(resources string:'Use the New Settings Dialog') on:useNewSettingsApplication.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5409
        box addHorizontalLine.
4385
47c861cdeb58 allow change of settings dialog delction and use new FileDialog
penk
parents: 4382
diff changeset
  5410
    ].
4464
997576abcb7f add ProcessMonitorV2 access from menu dependent on userPreferences
penk
parents: 4456
diff changeset
  5411
    (Smalltalk at:#ProcessMonitorV2) isBehavior ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5412
        box addCheckBox:(resources string:'Use the New ProcessMonitor') on:useProcessMonitorV2.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5413
        box addHorizontalLine.
4464
997576abcb7f add ProcessMonitorV2 access from menu dependent on userPreferences
penk
parents: 4456
diff changeset
  5414
    ].
4936
ed126a4cc771 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4914
diff changeset
  5415
    box addCheckBox:(resources string:'Use the New Changes Browser') on:useNewChangesBrowser.
ed126a4cc771 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4914
diff changeset
  5416
    box addHorizontalLine.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5417
    box addCheckBox:(resources string:'Use Hierarchical Inspector') on:useNewInspector.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5418
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5419
    box addCheckBox:(resources string:'Show Clock in Launcher') on:showClockInLauncher.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5420
    box addHorizontalLine.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5421
    in := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5422
            addLabelledInputField:(resources string:'Transcripts Buffer Size:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5423
            adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5424
            on:transcriptBufferSize
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5425
            tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5426
            separateAtX:0.6.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5427
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5428
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5429
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5430
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5431
        addHelpButtonFor:'Launcher/toolSettings.html';
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5432
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5433
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5434
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5435
    "/ show the box ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5436
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5437
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5438
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5439
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5440
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5441
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5442
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5443
        acceptChannel value:false; value:true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5444
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5445
        currentUserPrefs useNewInspector:useNewInspector value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5446
        currentUserPrefs useNewChangesBrowser:useNewChangesBrowser value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5447
        currentUserPrefs useNewSystemBrowser:useNewSystemBrowser value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5448
        currentUserPrefs useNewVersionDiffBrowser:useNewVersionDiffBrowser value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5449
        currentUserPrefs useNewFileBrowser:useNewFileBrowser value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5450
        currentUserPrefs useNewFileDialog:useNewFileDialog value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5451
        currentUserPrefs useProcessMonitorV2:useProcessMonitorV2 value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5452
        currentUserPrefs useNewSettingsApplication ~= useNewSettingsApplication value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5453
            currentUserPrefs useNewSettingsApplication:useNewSettingsApplication value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5454
            NewLauncher open.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5455
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5456
        (Smalltalk at:#FileBrowserV2) isBehavior ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5457
            useNewFileBrowser value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5458
                FileBrowserV2 installInLauncher.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5459
            ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5460
                FileBrowserV2 isLoaded ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5461
                    FileBrowserV2 removeFromLauncher.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5462
                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5463
            ].
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
        showClock := showClockInLauncher value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5466
        currentUserPrefs showClockInLauncher ~= showClock ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5467
            currentUserPrefs showClockInLauncher:showClock.
15495
41d4ea9d99d8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15385
diff changeset
  5468
            currentTranscript isExternalStream ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5469
                launcher := Transcript application.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5470
                (launcher isKindOf:ToolApplicationModel) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5471
                    showClock ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5472
                        launcher startClock
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5473
                    ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5474
                        launcher stopClock
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5475
                    ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5476
                ]
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
        Inspector := currentUserPrefs inspectorClassSetting.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5481
15495
41d4ea9d99d8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15385
diff changeset
  5482
        transcriptBufferSize := Integer readFrom:transcriptBufferSize value onError:currentTranscript lineLimit.
41d4ea9d99d8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15385
diff changeset
  5483
        currentTranscript lineLimit:transcriptBufferSize.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5484
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5485
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5486
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5487
4385
47c861cdeb58 allow change of settings dialog delction and use new FileDialog
penk
parents: 4382
diff changeset
  5488
"
47c861cdeb58 allow change of settings dialog delction and use new FileDialog
penk
parents: 4382
diff changeset
  5489
    self toolSettings
47c861cdeb58 allow change of settings dialog delction and use new FileDialog
penk
parents: 4382
diff changeset
  5490
"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5491
    "Modified: / 9.9.1996 / 22:43:36 / stefan"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5492
    "Modified: / 16.4.1998 / 17:18:47 / ca"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5493
    "Created: / 13.10.1998 / 15:44:36 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5494
    "Modified: / 12.11.2001 / 15:48:54 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5495
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5496
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5497
viewStyleSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5498
    self viewStyleSettingsFor:nil
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5499
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5500
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5501
viewStyleSettingsFor:requestor
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  5502
    "open a dialog on viewStyle related settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  5503
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5504
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5505
    |resourceDir dir box
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5506
     list listView scrView infoLabel infoForwarder newStyle
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5507
     someRsrcFile didApply resources listUpdater showStandardStylesOnly standardStyles|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5508
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5509
    showStandardStylesOnly := true asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5510
    standardStyles := #(
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5511
                        'decWindows'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5512
                        'iris'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5513
                        'motif'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5514
                        'mswindows95'
12059
9daa2caa5dcd class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 11990
diff changeset
  5515
                        'mswindowsXP'
9daa2caa5dcd class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 11990
diff changeset
  5516
                        'mswindowsVista'
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5517
                        'next'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5518
                        'normal'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5519
                        'os2'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5520
                        'st80'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5521
                       ).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5522
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5523
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5524
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5525
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5526
     search resources directory for a list of .style files ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5527
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5528
    someRsrcFile := Smalltalk getSystemFileName:('resources' asFilename constructString:'normal.style').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5529
    someRsrcFile isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5530
        someRsrcFile := Smalltalk getResourceFileName:'normal.style' forPackage:'stx:libview'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5531
        someRsrcFile isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5532
            someRsrcFile := Smalltalk getResourceFileName:'styles/normal.style' forPackage:'stx:libview'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5533
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5534
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5535
    someRsrcFile notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5536
        resourceDir := someRsrcFile asFilename directoryName
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5537
    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5538
        resourceDir := Smalltalk getSystemFileName:'resources'.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5539
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5540
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5541
    resourceDir isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5542
        self warn:'no styles found (missing ''resources'' directory)'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5543
        ^ self
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5544
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5545
    dir := resourceDir asFilename directoryContents.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5546
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5547
    list := SelectionInList new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5548
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5549
    listUpdater := [
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5550
        |listOfStyles lastSelection|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5551
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5552
        lastSelection := list selection.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5553
        listOfStyles := dir select:[:aFileName | aFileName asFilename hasSuffix:'style'].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5554
        listOfStyles := listOfStyles collect:[:aFileName | aFileName asFilename nameWithoutSuffix].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5555
        Filename isCaseSensitive ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5556
            listOfStyles := listOfStyles collect:[:aStyleName | aStyleName asLowercase].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5557
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5558
        listOfStyles remove:'generic' ifAbsent:nil; remove:'mswindows3' ifAbsent:nil.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5559
        showStandardStylesOnly value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5560
            listOfStyles := listOfStyles select:[:aStyleName | standardStyles includes:aStyleName].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5561
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5562
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5563
        listOfStyles sort.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5564
        list list:listOfStyles.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5565
        list selection:lastSelection.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5566
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5567
    listUpdater value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5568
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5569
    showStandardStylesOnly onChangeEvaluate:listUpdater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5570
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5571
    infoForwarder := [
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5572
                        |nm sheet comment|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5573
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5574
                        comment := ''.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5575
                        nm := list selection.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5576
                        nm notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5577
                            sheet := ViewStyle fromFile:(nm , '.style').
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5578
                            comment := (sheet at:#comment ifAbsent:'') withoutSeparators.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5579
                        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5580
                        comment := comment withCRs asStringCollection.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5581
                        comment size == 1 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5582
                            comment := comment first
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5583
                        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5584
                        infoLabel label:comment
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5585
                       ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5586
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5587
    list onChangeEvaluate:infoForwarder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5588
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5589
    box := Dialog new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5590
    box label:(resources string:'Style Selection').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5591
13735
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  5592
    box addTextLabel:(resources at:'STYLE_MSG' default:'Select a Style') withCRs adjust:#left.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5593
    listView := SelectionInListView on:list.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5594
    listView doubleClickAction:[:sel | box acceptChannel value:true. box hide].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5595
    box addCheckBox:(resources string:'standard styles only') on:showStandardStylesOnly.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5596
    scrView := box addComponent:(ScrollableView forView:listView) tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5597
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5598
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5599
13735
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  5600
    infoLabel := box addTextLabel:'\\' withCRs adjust:#centerLeft.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5601
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5602
    box addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5603
"/ mhmh - the newLauncher does not yet handle apply (without close) correctly
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5604
"/    b := box addButton:(Button label:(resources string:'apply')).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5605
"/    b action:[didApply := true. requestor changeViewStyleTo:(list selection)].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5606
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5607
    (standardStyles includes:View defaultStyle) ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5608
        showStandardStylesOnly value:false
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5609
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5610
    list selection:(View defaultStyle).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5611
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5612
    box stickAtBottomWithVariableHeight:scrView.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5613
    box stickAtBottomWithFixHeight:infoLabel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5614
    didApply := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5615
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5616
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5617
    box destroy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5618
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5619
        ((newStyle := list selection) ~= View defaultStyle
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5620
        or:[didApply ~~ true]) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5621
            requestor notNil ifTrue:[requestor changeViewStyleTo:newStyle].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5622
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5623
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5624
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5625
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5626
     self viewStyleSettingsFor:nil
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5627
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5628
7484
d8ff12aafbaa use nameWithoutSuffix
Claus Gittinger <cg@exept.de>
parents: 7455
diff changeset
  5629
    "Modified: / 07-11-2006 / 13:58:06 / cg"
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  5630
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  5631
4914
e3888800ba3f category
Claus Gittinger <cg@exept.de>
parents: 4895
diff changeset
  5632
!AbstractLauncherApplication::LauncherDialogs class methodsFor:'dialogs-file'!
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  5633
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5634
objectModuleDialog
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5635
    "opens a moduleInfo dialog"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5636
7313
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5637
    self objectModuleDialogReadOnly:false
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5638
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5639
    "Modified: / 19-09-2006 / 19:14:20 / cg"
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
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5642
objectModuleDialogReadOnly
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5643
    "opens a moduleInfo dialog"
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5644
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5645
    self objectModuleDialogReadOnly:true
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
    "Created: / 19-09-2006 / 19:14:27 / cg"
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
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5650
objectModuleDialogReadOnly:readOnly
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5651
    "opens a moduleInfo dialog"
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5652
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5653
    |allModules moduleNames
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5654
     allObjects methodObjects methodNames
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5655
     cObjects cObjectNames
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5656
     otherObjects otherObjectNames
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5657
     box l handles unloadButton unloadAndRemoveButton
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5658
     list1 list2 listView1 listView2
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5659
     y panel
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5660
     showBuiltIn showModules showMethods showCObjects showOthers
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5661
     moduleListUpdater check canDoIt menu
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5662
     resources middleLabel device screenW screenH|
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5663
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5664
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5665
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5666
    showBuiltIn := true asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5667
    canDoIt := ObjectFileLoader notNil and:[ObjectFileLoader canLoadObjectFiles].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5668
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5669
    showModules := canDoIt asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5670
    showMethods := canDoIt asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5671
    showCObjects := canDoIt asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5672
    showOthers := canDoIt asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5673
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5674
    list1 := SelectionInList new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5675
    list2 := SelectionInList new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5676
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5677
    moduleListUpdater := [
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5678
            |l|
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5679
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5680
            list2 list:nil.
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
            l := Array new.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5683
            handles := Array new.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5684
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5685
            (showModules value or:[showBuiltIn value]) ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5686
                allModules := ObjectMemory binaryModuleInfo asOrderedCollection.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5687
                (showBuiltIn value and:[showModules value]) ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5688
                    allModules := allModules select:[:i |
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5689
                        |wantToSee|
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5690
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5691
                        wantToSee := i dynamic.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5692
                        showBuiltIn value ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5693
                            wantToSee := wantToSee not
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5694
                        ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5695
                        wantToSee
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
                ].
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
                "/ 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
  5700
                allModules sort:[:a :b | (a id) > (b id)].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5701
                moduleNames := allModules collect:[:entry | entry name].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5702
                l := l , moduleNames.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5703
                handles := handles , allModules.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5704
            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5705
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5706
            showMethods value ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5707
                allObjects := ObjectFileLoader loadedObjectHandles.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5708
                methodObjects := (allObjects select:[:h | h isMethodHandle]) asArray.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5709
                methodNames := methodObjects collect:[:mH | mH method isNil ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5710
                                                                'compiled method - removed' " , ' (in ' , mH pathName , ')' "
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5711
                                                            ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5712
                                                                'compiled method ' , mH method whoString  " , ' (in ' , mH pathName , ')' "
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5713
                                                            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5714
                                                     ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5715
                l := l , methodNames.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5716
                handles := handles , methodObjects.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5717
            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5718
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5719
            showCObjects value ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5720
                allObjects := ObjectFileLoader loadedObjectHandles.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5721
                cObjects := (allObjects select:[:h | h isFunctionObjectHandle]) asArray.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5722
                cObjectNames := cObjects collect:[:entry | entry pathName].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5723
                l := l , cObjectNames.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5724
                handles := handles , cObjects.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5725
            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5726
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5727
            showOthers value ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5728
                allObjects := ObjectFileLoader loadedObjectHandles.
12823
50a3b78ef6e7 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12756
diff changeset
  5729
                otherObjects := (allObjects reject:[:h | (h isFunctionObjectHandle
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5730
                                                         or:[h isMethodHandle
12823
50a3b78ef6e7 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12756
diff changeset
  5731
                                                         or:[h isClassLibHandle]])]) asArray.
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5732
                otherObjectNames := otherObjects collect:[:entry | entry pathName].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5733
                l := l , otherObjectNames.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5734
                handles := handles , otherObjects.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5735
            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5736
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5737
            showBuiltIn value ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5738
                l := #('VM') , l.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5739
                handles := #(VM) , handles.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5740
                allModules := #(VM) , allModules.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5741
            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5742
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5743
            list1 list:l.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5744
            readOnly ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5745
                unloadButton disable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5746
                unloadAndRemoveButton disable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5747
            ]
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5748
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5749
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5750
    showBuiltIn onChangeEvaluate:moduleListUpdater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5751
    showModules onChangeEvaluate:moduleListUpdater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5752
    showMethods onChangeEvaluate:moduleListUpdater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5753
    showCObjects onChangeEvaluate:moduleListUpdater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5754
    showOthers onChangeEvaluate:moduleListUpdater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5755
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5756
    box := Dialog new.
5410
d44ced95df04 moduleDialog labels
Claus Gittinger <cg@exept.de>
parents: 5319
diff changeset
  5757
    box label:(resources string:'ST/X & Module Version Information').
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5758
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5759
    listView1 := HVScrollableView for:SelectionInListView miniScrollerH:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5760
    listView1 model:list1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5761
    listView1 origin:0.0@0.0 corner:1.0@0.4. "/ ; inset:2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5762
    listView1 action:[:sel |
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5763
        |info classNames tabs module|
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5764
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5765
        listView1 middleButtonMenu:nil.
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
        box withWaitCursorDo:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5768
            |nm fileName addr entry1 entry2 entry3 method l|
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5769
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5770
            tabs := TabulatorSpecification unit:#inch positions:#(0 2.6 3.5).
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
            (showModules value or:[showBuiltIn value]) ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5773
                info := allModules at:sel ifAbsent:nil.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5774
            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5775
            info isNil ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5776
                "/ selected a method, cObject or unknown
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5777
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5778
                module := handles at:sel.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5779
                fileName := module pathName.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5780
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5781
                module isMethodHandle ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5782
                    middleLabel label:'contains method:'.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5783
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5784
                    (method := module method) isNil ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5785
                        nm := '** removed **'.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5786
                    ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5787
                        menu := PopUpMenu
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5788
                                    labels:#('Inspect' 'Browse')
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5789
                                    selectors:#(inspect browse).
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5790
                        menu actionAt:#inspect put:[ method inspect ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5791
                        menu actionAt:#browse put:[ |who|
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5792
                                                    who := method who.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5793
                                                    UserPreferences systemBrowserClass
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5794
                                                        openInClass:(who methodClass)
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5795
                                                        selector:(who methodSelector)
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5796
                                                  ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5797
                        listView1 middleButtonMenu:menu.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5798
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
  5799
                        nm := (method whoString) withColor:(Color blue).
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5800
                    ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5801
                    entry1 := MultiColListEntry new:2 tabulatorSpecification:tabs.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5802
                    entry1 colAt:1 put:'compiled method'; colAt:2 put:nm.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5803
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5804
                    entry2 := MultiColListEntry new:2 tabulatorSpecification:tabs.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5805
                    entry2 colAt:1 put:'path'; colAt:2 put:fileName.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5806
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5807
                    entry3 := MultiColListEntry new:2 tabulatorSpecification:tabs.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5808
                    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
  5809
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5810
                    list2 list:(Array with:entry1 with:entry2 with:entry3).
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5811
                ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5812
                    (module isFunctionObjectHandle
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5813
                    and:[module functions notEmpty]) ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5814
                        middleLabel label:'contains function:'.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5815
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5816
                        menu := PopUpMenu
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5817
                                    labels:#('Inspect')
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5818
                                    selectors:#(inspect).
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5819
                        menu actionAt:#inspect put:[ module functions inspect  ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5820
                        listView1 middleButtonMenu:menu.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5821
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5822
                        list2 list:((module functions select:[:f | f notNil])
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5823
                                        collect:[:f | |entry|
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5824
                                                        entry := MultiColListEntry new:2 tabulatorSpecification:tabs.
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
  5825
                                                        entry colAt:1 put:(f name withColor:Color blue).
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5826
                                                        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
  5827
                                                        entry
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5828
                                                ]).
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5829
                    ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5830
                        list2 list:#('nothing known about contents (no functions have been extracted)').
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5831
                    ]
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5832
                ].
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
                readOnly ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5835
                    unloadButton enable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5836
                    unloadAndRemoveButton disable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5837
                ]
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5838
            ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5839
                info == #VM ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5840
                    "/ dummy entry for VM;
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5841
                    "/ show file versions in lower view.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5842
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5843
                    middleLabel label:'contains modules:'.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5844
                    l := (ObjectMemory getVMIdentificationStrings).
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5845
                    l := l select:[:entry | entry includesString:'$Header'].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5846
                    l := l select:[:entry | entry includesString:',v'].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5847
                    l := l collect:[:entry |
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5848
                        |i1 i2 file revision date listEntry|
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5849
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5850
                        listEntry := MultiColListEntry new:3 tabulatorSpecification:tabs.
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
                        i1 := entry indexOfSubCollection:'librun'.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5853
                        i1 ~~ 0 ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5854
                            i2 := entry indexOfSubCollection:',v' startingAt:i1.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5855
                            i2 ~~ 0 ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5856
                                file := entry copyFrom:i1+7 to:(i2-1).
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5857
                                listEntry colAt:1 put:file.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5858
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5859
                                i1 := i2+3.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5860
                                i2 := entry indexOfSeparatorStartingAt:i1.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5861
                                revision := entry copyFrom:i1 to:(i2-1).
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5862
                                listEntry colAt:2 put:revision.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5863
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5864
                                i1 := i2+1.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5865
                                i2 := entry indexOfSeparatorStartingAt:i1.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5866
                                date := entry copyFrom:i1 to:(i2-1).
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5867
                                listEntry colAt:3 put:date.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5868
                            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5869
                        ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5870
                        listEntry.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5871
                        "/ entry
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5872
                    ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5873
                    list2 list:l.
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
                    readOnly ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5876
                        unloadButton disable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5877
                        unloadAndRemoveButton disable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5878
                    ]
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5879
                ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5880
                    "/ selected a package
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5881
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5882
                    "/ fill bottom list with class-info
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
                    middleLabel label:'contains classes:'.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5885
                    classNames := info classNames asSortedCollection.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5886
                    classNames := classNames select:[:cName |
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5887
                                    |cls|
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5888
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5889
                                    cls := Smalltalk classNamed:cName.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5890
                                    cls isNil ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5891
                                        true "a removed class"
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5892
                                    ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5893
                                        cls isPrivate not
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5894
                                    ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5895
                                  ].
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
                    classNames := classNames collect:[:cName |
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5898
                                    |cls entry rev listEntry|
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5899
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5900
                                    listEntry := MultiColListEntry new:2 tabulatorSpecification:tabs.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5901
                                    listEntry colAt:1 put:cName.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5902
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5903
                                    cls := Smalltalk classNamed:cName.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5904
                                    cls isNil ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5905
                                        listEntry colAt:2 put:'(class removed)'.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5906
                                    ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5907
                                        rev := cls binaryRevision.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5908
                                        rev notNil ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5909
                                            cls isLoaded ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5910
                                                entry := '(stub for: ' , rev.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5911
                                            ] ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5912
                                                entry :='(bin: ' , rev.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5913
                                            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5914
                                            cls revision ~= rev ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5915
                                                entry := entry , ' / src: ' , (cls revision printString)
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5916
                                            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5917
                                            listEntry colAt:2 put:entry , ')'
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5918
                                        ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5919
                                           cls revision notNil ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5920
                                                listEntry colAt:2 put:'(overloaded by: ' , cls revision , ')'
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5921
                                           ]
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5922
                                        ]
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
                                    listEntry
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
                    list2 list:classNames.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5927
                    readOnly ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5928
                        info dynamic ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5929
                            unloadButton enable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5930
                            unloadAndRemoveButton enable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5931
                        ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5932
                            unloadButton disable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5933
                            unloadAndRemoveButton disable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5934
                        ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5935
                    ].
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
        ]
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5939
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5940
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5941
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5942
    panel := HorizontalPanelView new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5943
5410
d44ced95df04 moduleDialog labels
Claus Gittinger <cg@exept.de>
parents: 5319
diff changeset
  5944
    panel add:(l := Label label:'Show:').
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5945
    l adjust:#left; borderWidth:0.
5410
d44ced95df04 moduleDialog labels
Claus Gittinger <cg@exept.de>
parents: 5319
diff changeset
  5946
    panel add:(check := CheckBox label:'Builtin' model:showBuiltIn).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5947
    box makeTabable:check.
5410
d44ced95df04 moduleDialog labels
Claus Gittinger <cg@exept.de>
parents: 5319
diff changeset
  5948
    panel add:(check := CheckBox label:'ClassLibs' model:showModules).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5949
    canDoIt ifFalse:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5950
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5951
    ] ifTrue:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5952
        box makeTabable:check.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5953
    ].
5410
d44ced95df04 moduleDialog labels
Claus Gittinger <cg@exept.de>
parents: 5319
diff changeset
  5954
    panel add:(check := CheckBox label:'Methods' model:showMethods).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5955
    canDoIt ifFalse:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5956
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5957
    ] ifTrue:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5958
        box makeTabable:check.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5959
    ].
5410
d44ced95df04 moduleDialog labels
Claus Gittinger <cg@exept.de>
parents: 5319
diff changeset
  5960
    panel add:(check := CheckBox label:'C-objects' model:showCObjects).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5961
    canDoIt ifFalse:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5962
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5963
    ] ifTrue:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5964
        box makeTabable:check.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5965
    ].
5410
d44ced95df04 moduleDialog labels
Claus Gittinger <cg@exept.de>
parents: 5319
diff changeset
  5966
    panel add:(check := CheckBox label:'Others' model:showOthers).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5967
    canDoIt ifFalse:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5968
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5969
    ] ifTrue:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5970
        box makeTabable:check.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5971
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5972
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5973
    panel horizontalLayout:#fitSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5974
    "/ panel horizontalLayout:#leftSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5975
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5976
    box addComponent:panel tabable:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5977
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5978
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5979
    box addComponent:listView1 tabable:true.
8160
0dcbd8d60198 added preferredWidth & preferredHeight
Claus Gittinger <cg@exept.de>
parents: 8150
diff changeset
  5980
    listView1 topInset:(View viewSpacing + panel preferredHeight).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5981
    listView1 origin:0.0@0.0 corner:1.0@0.4. "/ ; inset:2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5982
5410
d44ced95df04 moduleDialog labels
Claus Gittinger <cg@exept.de>
parents: 5319
diff changeset
  5983
    l := box addTextLabel:(resources string:'Contains:').
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5984
    l adjust:#left; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5985
    l origin:0.0@0.4 corner:1.0@0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5986
    l topInset:(View viewSpacing).
8160
0dcbd8d60198 added preferredWidth & preferredHeight
Claus Gittinger <cg@exept.de>
parents: 8150
diff changeset
  5987
    l bottomInset:((l preferredHeight) negated - View viewSpacing).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5988
    middleLabel := l.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5989
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5990
    listView2 := HVScrollableView for:SelectionInListView  miniScrollerH:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5991
    listView2 model:list2; printItems:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5992
    box addComponent:listView2 tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5993
    listView2 origin:0.0@0.4 corner:1.0@1.0. "/ ; inset:2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5994
    listView2 disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5995
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5996
    menu := PopUpMenu
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5997
                itemList:#(
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5998
                    ('Copy List'    copyList  )
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5999
                )
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6000
                resources:resources.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6001
    menu
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6002
        actionAt:#copyList
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6003
        put:[ listView2 setClipboardText:((listView2 list collect:[:l | l string]) asStringCollection asString)  ].
5440
25f9508b7df4 module dialog
Michael Beyl <mb@exept.de>
parents: 5423
diff changeset
  6004
    listView2 middleButtonMenu:menu.
25f9508b7df4 module dialog
Michael Beyl <mb@exept.de>
parents: 5423
diff changeset
  6005
7313
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  6006
    readOnly ifFalse:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6007
        unloadButton := Button label:(resources string:'Unload').
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6008
        unloadButton action:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6009
            box withWaitCursorDo:[
9411
04a4ec0fd112 When unloading an ObjectFileHandle, use ObjectFileHandle instance methods
Stefan Vogel <sv@exept.de>
parents: 9374
diff changeset
  6010
                |handle idx|
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6011
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6012
                idx := list1 selectionIndex.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6013
                list1 selectionIndex:nil.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6014
9411
04a4ec0fd112 When unloading an ObjectFileHandle, use ObjectFileHandle instance methods
Stefan Vogel <sv@exept.de>
parents: 9374
diff changeset
  6015
                handle := handles at:idx.
04a4ec0fd112 When unloading an ObjectFileHandle, use ObjectFileHandle instance methods
Stefan Vogel <sv@exept.de>
parents: 9374
diff changeset
  6016
                handle notNil ifTrue:[
04a4ec0fd112 When unloading an ObjectFileHandle, use ObjectFileHandle instance methods
Stefan Vogel <sv@exept.de>
parents: 9374
diff changeset
  6017
                    handle unload.
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6018
                ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6019
                moduleListUpdater value.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6020
                unloadButton disable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6021
            ]
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6022
        ].
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
        unloadAndRemoveButton := Button label:(resources string:'Remove Classes & Unload').
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6025
        unloadAndRemoveButton action:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6026
            box withWaitCursorDo:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6027
                |info idx pathName|
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6028
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6029
                idx := list1 selectionIndex.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6030
                info := allModules at:idx ifAbsent:nil.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6031
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6032
                list1 selectionIndex: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
                info isNil ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6035
                    "/ selected a method
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6036
                    "/ idx := idx - allModules size.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6037
                    pathName := (handles at:idx) pathName.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6038
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6039
                ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6040
                    "/ selected a package
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6041
                    pathName := info pathName.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6042
                ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6043
                ObjectFileLoader unloadObjectFileAndRemoveClasses:pathName.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6044
                moduleListUpdater value.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6045
                unloadAndRemoveButton disable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6046
            ]
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6047
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6048
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6049
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6050
    moduleListUpdater value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6051
7313
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  6052
    readOnly ifFalse:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6053
        box addButton:unloadButton.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6054
        box addButton:unloadAndRemoveButton.
7313
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  6055
    ].
5410
d44ced95df04 moduleDialog labels
Claus Gittinger <cg@exept.de>
parents: 5319
diff changeset
  6056
    box addAbortButtonLabelled:(resources string:'Dismiss').
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6057
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6058
    y := box yPosition.
8160
0dcbd8d60198 added preferredWidth & preferredHeight
Claus Gittinger <cg@exept.de>
parents: 8150
diff changeset
  6059
    listView2 topInset:(l preferredHeight + 5).
0dcbd8d60198 added preferredWidth & preferredHeight
Claus Gittinger <cg@exept.de>
parents: 8150
diff changeset
  6060
    listView2 bottomInset:(box preferredHeight - y).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6061
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6062
    device := box device.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6063
    screenW := device width.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6064
    screenH := device height.   
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6065
    box width:(400 min:(screenW * 2 // 3));
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6066
        height:(450 min:(screenH - 50)).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6067
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6068
"/  box sizeFixed:true.
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6069
    box extent:(600 min:(screenW * 2 // 3))
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6070
               @
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6071
               (500 min:(screenH - 50)) .
5440
25f9508b7df4 module dialog
Michael Beyl <mb@exept.de>
parents: 5423
diff changeset
  6072
    box openModeless.
25f9508b7df4 module dialog
Michael Beyl <mb@exept.de>
parents: 5423
diff changeset
  6073
"/    box destroy.
4398
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  6074
"
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  6075
    self objectModuleDialog
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  6076
"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6077
7313
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  6078
    "Modified: / 17-09-1995 / 16:47:50 / claus"
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  6079
    "Created: / 19-09-2006 / 19:14:06 / cg"
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  6080
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  6081
4914
e3888800ba3f category
Claus Gittinger <cg@exept.de>
parents: 4895
diff changeset
  6082
!AbstractLauncherApplication::LauncherDialogs class methodsFor:'dialogs-private'!
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  6083
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6084
cvsConfigurationDialog
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6085
    |cvsRootHolder resources defaultsList bindings dialog
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6086
     listOfModules selectedPerModuleRoot rootsPerModule acceptChannel
7332
4ed25898a452 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7313
diff changeset
  6087
     removeEnabled cvsExecutableHolder|
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6088
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6089
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6090
9528
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6091
    OperatingSystem getDomainName = 'bh.exept.de' ifTrue:[
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6092
        defaultsList := #(
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6093
                            'cvs.bh.exept.de:/cvs/stx'
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6094
                         ).
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6095
        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
  6096
    ] ifFalse:[
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6097
        defaultsList := #(
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6098
                            ':pserver:user@CVSHOST:/cvs/stx'
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6099
                         ).
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6100
        defaultsList := defaultsList copyWith:(':pserver:' , OperatingSystem getLoginName , '@CVSHOST:/cvs/stx')
4510
0727a48aa72e better CVS-Root defaults
penk
parents: 4495
diff changeset
  6101
    ].
0727a48aa72e better CVS-Root defaults
penk
parents: 4495
diff changeset
  6102
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6103
    OperatingSystem isUNIXlike ifTrue:[
9528
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6104
        defaultsList := defaultsList , #(
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6105
                          '/cvs/stx'
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6106
                         ).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6107
    ] ifFalse:[
9528
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6108
        OperatingSystem isMSDOSlike ifTrue:[
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6109
            defaultsList := defaultsList , #(
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6110
                              ':local:c:\cvs\stx'
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6111
                             ).
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6112
        ] ifFalse:[
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6113
            "there might be more here in the future"
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6114
        ]
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6115
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6116
4766
723fc2feb38c new cvs defaults
Claus Gittinger <cg@exept.de>
parents: 4724
diff changeset
  6117
    cvsRootHolder := CVSSourceCodeManager repositoryName ? '/cvs/stx'.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6118
    cvsRootHolder := cvsRootHolder asValue.
5944
4fef6e1d18ff Use #addAll: instead of #declareAllFrom:, since #declareAllFrom:
Stefan Vogel <sv@exept.de>
parents: 5917
diff changeset
  6119
    rootsPerModule := Dictionary new.
6995
91df148858bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6806
diff changeset
  6120
    rootsPerModule addAll:(CVSSourceCodeManager repositoryInfoPerModule).
7332
4ed25898a452 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7313
diff changeset
  6121
    cvsExecutableHolder := CVSSourceCodeManager cvsExecutable asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6122
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6123
    bindings := IdentityDictionary new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6124
    bindings at:#acceptChannel put:(acceptChannel := TriggerValue new).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6125
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6126
    bindings at:#cvsRootPrototypeList put:defaultsList.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6127
    bindings at:#cvsRootHolder put:cvsRootHolder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6128
    bindings at:#perModuleRootModule put:nil asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6129
    bindings at:#perModuleRoot put:nil asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6130
    bindings at:#removeEnabled put:(removeEnabled := false asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6131
    bindings at:#listOfModules put:(listOfModules := rootsPerModule keys asList).
7332
4ed25898a452 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7313
diff changeset
  6132
    bindings at:#cvsExecutableHolder put:cvsExecutableHolder.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6133
    listOfModules sort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6134
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6135
    bindings at:#selectedPerModuleRoot put:(selectedPerModuleRoot := nil asValue).
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6136
    selectedPerModuleRoot
9528
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6137
             onChangeEvaluate:[
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6138
                            |module cvsRoot|
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6139
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6140
                            acceptChannel value:true.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6141
                            module := selectedPerModuleRoot value.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6142
                            removeEnabled value:true.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6143
                            cvsRoot := rootsPerModule at:module ifAbsent:''.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6144
                            (bindings at:#perModuleRootModule) value:module.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6145
                            (bindings at:#perModuleRoot) value:cvsRoot.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6146
             ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6147
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6148
    bindings at:#help put:[
9528
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6149
                            WindowGroup activeGroup withWaitCursorDo:[
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6150
                                HTMLDocumentView openFullOnHelpFile:'Launcher/cvsSetup.html'
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6151
                            ]
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6152
                          ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6153
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6154
    bindings at:#addPerModuleRoot put:[
9528
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6155
                            |module cvsRoot|
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6156
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6157
                            acceptChannel value:true.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6158
                            module := (bindings at:#perModuleRootModule) value.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6159
                            cvsRoot := (bindings at:#perModuleRoot) value.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6160
                            (listOfModules includes:module) ifFalse:[
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6161
                                listOfModules add:module.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6162
                                listOfModules sort.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6163
                            ].
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6164
                            cvsRoot size > 0 ifTrue:[
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6165
                                rootsPerModule at:module put:cvsRoot.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6166
                            ].
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6167
                          ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6168
    bindings at:#removePerModuleRoot put:[
9528
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6169
                            |module|
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6170
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6171
                            acceptChannel value:true.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6172
                            module := (bindings at:#perModuleRootModule) value.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6173
                            listOfModules remove:module ifAbsent:nil.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6174
                            rootsPerModule removeKey:module ifAbsent:nil.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6175
                            (bindings at:#perModuleRootModule) value:nil.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6176
                            (bindings at:#perModuleRoot) value:nil.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6177
                          ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6178
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6179
    dialog := SimpleDialog new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6180
    dialog resources:resources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6181
    (dialog openSpec:(self cvsSetupSpec) withBindings:bindings) ifFalse:[
9528
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6182
        ^ self
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6183
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6184
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6185
    acceptChannel value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6186
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6187
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6188
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6189
    "/
7332
4ed25898a452 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7313
diff changeset
  6190
    CVSSourceCodeManager cvsExecutable:cvsExecutableHolder value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6191
    CVSSourceCodeManager initializeForRepository:cvsRootHolder value.
6995
91df148858bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6806
diff changeset
  6192
    CVSSourceCodeManager repositoryInfoPerModule:rootsPerModule.
4398
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  6193
7332
4ed25898a452 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7313
diff changeset
  6194
    "
4ed25898a452 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7313
diff changeset
  6195
     self cvsConfigurationDialog
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
4ed25898a452 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7313
diff changeset
  6198
    "Modified: / 21-09-2006 / 16:54:20 / cg"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6199
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6200
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6201
fontBoxForEncoding:encodingMatch
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6202
    "open a fontBox, showing fonts which match some encoding
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6203
     (used when changing to japanese ...)"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6204
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6205
    |box y b
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6206
     labelDef buttonDef listDef menuDef textDef
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6207
     models labels allOfThem filter resources defaultButton|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6208
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6209
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6210
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6211
    encodingMatch notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6212
        filter := [:f | f encoding notNil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6213
                        and:[encodingMatch match:f encoding]].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6214
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6215
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6216
    models := OrderedCollection new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6217
    labels := OrderedCollection new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6218
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6219
    models add:(allOfThem := nil asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6220
    models add:(labelDef := Label defaultFont asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6221
    models add:(buttonDef := Button defaultFont asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6222
    models add:(listDef := SelectionInListView defaultFont asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6223
    models add:(menuDef := MenuView defaultFont asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6224
    models add:(textDef := TextView defaultFont asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6225
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6226
    box := Dialog new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6227
    box label:(resources string:'Font Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6228
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6229
    models
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6230
    with:(resources array:#('All' 'Labels' 'Buttons' 'Lists' 'Menus' 'Edited Text'))
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6231
    do:[:model :title |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6232
        |y2 lbl f i|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6233
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6234
        f := model value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6235
13735
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  6236
        box addTextLabel:title adjust:#left.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6237
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6238
        y := box yPosition.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6239
        b := box addComponent:(Button label:(resources string:'Change ...')) tabable:true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6240
        b relativeExtent:nil; extent:(b preferredExtent).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6241
        y2 := box yPosition.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6242
        box yPosition:y.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6243
        i := box leftIndent.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6244
        box leftIndent:(b widthIncludingBorder + View viewSpacing).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6245
        (lbl := box addTextLabel:'')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6246
            adjust:#left;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6247
            font:(model value);
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6248
            labelChannel:(BlockValue
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6249
                            with:[:v | |f|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6250
                                f := v.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6251
                                f isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6252
                                    ''
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6253
                                ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6254
                                    f userFriendlyName
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6255
                                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6256
                            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6257
                            argument:model).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6258
        labels add:lbl.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6259
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6260
        box leftIndent:i.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6261
        box yPosition:(box yPosition max:y2).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6262
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6263
        box addVerticalSpace; addHorizontalLine; addVerticalSpace.
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
        b action:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6266
            |f|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6267
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6268
            f := FontPanel
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6269
                    fontFromUserInitial:(model value)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6270
                    title:(resources string:'Font for %1' with:title)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6271
                    filter:filter
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6272
                    encoding:encodingMatch.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6273
            f notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6274
                model == allOfThem ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6275
                    models do:[:m | m value:f].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6276
                    labels do:[:l | l font:f]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6277
                ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6278
                    model value:f.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6279
                    lbl font:f.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6280
                ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6281
            ]
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
        model == allOfThem ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6284
            box addVerticalSpace
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6285
        ]
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6286
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6287
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6288
    box addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6289
    defaultButton := Button label:(resources string:'Defaults').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6290
13401
0dbda3c5121c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13241
diff changeset
  6291
    box addButton:defaultButton.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6292
    defaultButton
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6293
        action:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6294
            "/ fetch defaults
5449
8947b587b1f7 readStyleSheetAndUpdateAllStyleCaches not for every read settings
penk
parents: 5440
diff changeset
  6295
"/            View readStyleSheetAndUpdateAllStyleCaches.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6296
            labelDef value: Label defaultFont.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6297
            buttonDef value: Button defaultFont.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6298
            listDef value: SelectionInListView defaultFont.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6299
            menuDef value: MenuView defaultFont.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6300
            textDef value: TextView defaultFont.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6301
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6302
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6303
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6304
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6305
        Label defaultFont:labelDef value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6306
        Button defaultFont:buttonDef value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6307
        Toggle defaultFont:buttonDef value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6308
        TextView withAllSubclasses do:[:cls | cls defaultFont:textDef value].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6309
        SelectionInListView withAllSubclasses do:[:cls | cls defaultFont:listDef value].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6310
        MenuView defaultFont:menuDef value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6311
        MenuPanel defaultFont:menuDef value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6312
        NoteBookView defaultFont:menuDef value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6313
        PullDownMenu defaultFont:menuDef value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6314
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6315
    box destroy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6316
    ^ box accepted
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6317
7726
3622371456d4 BlockValue usage cleanup
Claus Gittinger <cg@exept.de>
parents: 7679
diff changeset
  6318
    "Created: / 27-02-1996 / 01:44:16 / cg"
3622371456d4 BlockValue usage cleanup
Claus Gittinger <cg@exept.de>
parents: 7679
diff changeset
  6319
    "Modified: / 17-06-1996 / 13:38:48 / stefan"
13401
0dbda3c5121c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13241
diff changeset
  6320
    "Modified: / 29-08-2013 / 12:20:48 / cg"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6321
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6322
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6323
formattingConfigurationDialog
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6324
    |dialog
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6325
     resources exampleText formattedText reformatAction
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6326
     reformatLocked
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6327
     oldUserPreferences
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6328
     currentUserPrefs
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6329
     tabIndent
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6330
     spaceAroundTemporaries emptyLineAfterTemporaries
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6331
     spaceAfterReturnToken spaceAfterKeywordSelector cStyleBlocks
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6332
     blockArgumentsOnNewLine
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6333
     maxLengthForSingleLineBlocks resetValue bindings|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6334
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6335
    RBFormatter isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6336
        ^ self warn:'Sorry, no RBFormatter class'.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6337
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6338
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6339
    RBFormatter isLoaded ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6340
        WindowGroup activeGroup withWaitCursorDo:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6341
            RBFormatter autoload
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6342
        ]
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6343
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6344
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6345
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6346
    currentUserPrefs := UserPreferences current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6347
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6348
    exampleText :=
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6349
'methodSelector:methodArg
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6350
    "method comment:
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6351
     some stupid code to show the current settings"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6352
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6353
    |index|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6354
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6355
    "/ another comment ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6356
    self at:index.                      "/ a message
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6357
    self at:index put:methodArg.        "/ a two arg message
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6358
    self from:1 to:index put:methodArg. "/ a three arg message
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6359
    methodArg ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6360
        Transcript showCR:''hello''.      "/ condition
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6361
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6362
    methodArg ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6363
        Transcript showCR:''hello''.      "/ condition
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6364
    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6365
        Transcript showCR:''world''.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6366
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6367
    [methodArg] whileTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6368
        Transcript showCR:''hello''.      "/ looping
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6369
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6370
    [self aVeryLongConditionBlock and:[self toMakeBlockLonger]] whileTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6371
        Transcript showCR:''hello''.      "/ long blocks
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6372
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6373
    methodArg do:[:element |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6374
        Transcript showCR:''hello''.      "/ looping
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6375
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6376
    1 to:methodArg size do:[:index |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6377
        Transcript showCR:''hello''.      "/ looping
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6378
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6379
    methodArg keysAndValuesDo:[:index |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6380
        Transcript showCR:''hello''.      "/ looping
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6381
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6382
    Object errorSignal handle:[:ex |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6383
        ex return
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6384
    ] do:[                                "/ exception handling
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6385
        self someAction                   "/ blocks
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6386
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6387
    ^ self.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6388
'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6389
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6390
    formattedText := '' asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6391
    reformatLocked := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6392
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6393
    reformatAction := [ |tree
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6394
                         s_tabIndent s_spaceAroundTemporaries s_emptyLineAfterTemporaries
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6395
                         s_spaceAfterReturnToken s_spaceAfterKeywordSelector s_cStyleBlocks
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6396
                         s_maxLengthForSingleLineBlocks s_blockArgumentsOnNewLine|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6397
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6398
                        reformatLocked ifFalse:[
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
                            "/ temporary change the RBFormatters settings ...
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
                            s_tabIndent := RBFormatter tabIndent.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6403
                            s_spaceAroundTemporaries := RBFormatter spaceAroundTemporaries.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6404
                            s_emptyLineAfterTemporaries := RBFormatter emptyLineAfterTemporaries.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6405
                            s_spaceAfterReturnToken := RBFormatter spaceAfterReturnToken.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6406
                            s_spaceAfterKeywordSelector := RBFormatter spaceAfterKeywordSelector.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6407
                            s_cStyleBlocks := RBFormatter cStyleBlocks.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6408
                            s_blockArgumentsOnNewLine := RBFormatter blockArgumentsOnNewLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6409
                            s_maxLengthForSingleLineBlocks := RBFormatter maxLengthForSingleLineBlocks.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6410
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6411
                            RBFormatter
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6412
                                tabIndent:tabIndent value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6413
                                spaceAroundTemporaries:spaceAroundTemporaries value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6414
                                emptyLineAfterTemporaries:emptyLineAfterTemporaries value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6415
                                spaceAfterReturnToken:spaceAfterReturnToken value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6416
                                spaceAfterKeywordSelector:spaceAfterKeywordSelector value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6417
                                cStyleBlocks:cStyleBlocks value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6418
                                blockArgumentsOnNewLine:blockArgumentsOnNewLine value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6419
                                maxLengthForSingleLineBlocks:maxLengthForSingleLineBlocks value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6420
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6421
                            tree := RBParser
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6422
                                        parseMethod:exampleText
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6423
                                        onError: [:aString :position | nil].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6424
                            tree do:[:node |
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6425
                                (node ~~ tree and:[node parent isNil]) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6426
                                    self error:'No parent for node'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6427
                                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6428
                            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6429
                            formattedText value:tree printString.
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
                            RBFormatter
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6432
                                tabIndent:s_tabIndent;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6433
                                spaceAroundTemporaries:s_spaceAroundTemporaries;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6434
                                emptyLineAfterTemporaries:s_emptyLineAfterTemporaries;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6435
                                spaceAfterReturnToken:s_spaceAfterReturnToken;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6436
                                spaceAfterKeywordSelector:s_spaceAfterKeywordSelector;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6437
                                cStyleBlocks:s_cStyleBlocks;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6438
                                blockArgumentsOnNewLine:s_blockArgumentsOnNewLine;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6439
                                maxLengthForSingleLineBlocks:s_maxLengthForSingleLineBlocks.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6440
                          ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6441
                      ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6442
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6443
    bindings := IdentityDictionary new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6444
    bindings at:#formattedText put:formattedText.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6445
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6446
    oldUserPreferences := currentUserPrefs copy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6447
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6448
    tabIndent := RBFormatter tabIndent asValue.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6449
    tabIndent onChangeEvaluate:reformatAction.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6450
    bindings at:#tabIndent put:tabIndent.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6451
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6452
    spaceAroundTemporaries := RBFormatter spaceAroundTemporaries asValue.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6453
    spaceAroundTemporaries onChangeEvaluate:reformatAction.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6454
    bindings at:#spaceAroundTemporaries put:spaceAroundTemporaries.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6455
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6456
    emptyLineAfterTemporaries := RBFormatter emptyLineAfterTemporaries asValue.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6457
    emptyLineAfterTemporaries onChangeEvaluate:reformatAction.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6458
    bindings at:#emptyLineAfterTemporaries put:emptyLineAfterTemporaries.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6459
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6460
    spaceAfterReturnToken := RBFormatter spaceAfterReturnToken asValue.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6461
    spaceAfterReturnToken onChangeEvaluate:reformatAction.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6462
    bindings at:#spaceAfterReturnToken put:spaceAfterReturnToken.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6463
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6464
    spaceAfterKeywordSelector := RBFormatter spaceAfterKeywordSelector asValue.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6465
    spaceAfterKeywordSelector onChangeEvaluate:reformatAction.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6466
    bindings at:#spaceAfterKeywordSelector put:spaceAfterKeywordSelector.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6467
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6468
    cStyleBlocks := RBFormatter cStyleBlocks asValue.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6469
    cStyleBlocks onChangeEvaluate:reformatAction.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6470
    bindings at:#cStyleBlocks put:cStyleBlocks.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6471
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6472
    blockArgumentsOnNewLine := RBFormatter blockArgumentsOnNewLine asValue.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6473
    blockArgumentsOnNewLine onChangeEvaluate:reformatAction.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6474
    bindings at:#blockArgumentsOnNewLine put:blockArgumentsOnNewLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6475
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6476
    maxLengthForSingleLineBlocks := RBFormatter maxLengthForSingleLineBlocks asValue.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6477
    maxLengthForSingleLineBlocks onChangeEvaluate:reformatAction.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6478
    bindings at:#maxLengthForSingleLineBlocks put:maxLengthForSingleLineBlocks.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6479
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6480
    bindings at:#resetList   put:#( 'ST/X default' 'RB default' ).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6481
    bindings at:#resetValue  put:(resetValue := nil asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6482
    resetValue onChangeEvaluate:
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6483
        [
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6484
            resetValue value == 1 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6485
                "/ ST/X defaults
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6486
                reformatLocked := true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6487
                tabIndent value: 4.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6488
                spaceAfterReturnToken value: true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6489
                spaceAfterKeywordSelector value: false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6490
                spaceAroundTemporaries value: false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6491
                emptyLineAfterTemporaries value: true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6492
                cStyleBlocks value: true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6493
                blockArgumentsOnNewLine value:false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6494
                maxLengthForSingleLineBlocks value: 20.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6495
                reformatLocked := false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6496
                reformatAction value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6497
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6498
            resetValue value == 2 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6499
                "/ RBParser defaults
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6500
                reformatLocked := true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6501
                tabIndent value: 8.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6502
                spaceAfterReturnToken value: false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6503
                spaceAfterKeywordSelector value: true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6504
                spaceAroundTemporaries value: true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6505
                emptyLineAfterTemporaries value: false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6506
                cStyleBlocks value: false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6507
                blockArgumentsOnNewLine value:false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6508
                maxLengthForSingleLineBlocks value: 20.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6509
                reformatLocked := false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6510
                reformatAction value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6511
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6512
            resetValue value:nil. "/ to force default label
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6513
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6514
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6515
    reformatAction value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6516
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6517
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6518
    "/ create a box on those ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6519
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6520
    dialog := SimpleDialog new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6521
    dialog postBuildBlock:[:builder |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6522
                                (builder componentAt:#sampleTextView)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6523
                                    cursorMovementWhenUpdating:nil;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6524
                                    scrollWhenUpdating:nil.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6525
                          ].
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6526
    (dialog openFor:nil
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6527
        spec:(self formatterDialogSpec)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6528
        withBindings:bindings)
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6529
    ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6530
        currentUserPrefs at:#'formatter.tabIndent' put:tabIndent value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6531
        currentUserPrefs at:#'formatter.spaceAroundTemporaries' put:spaceAroundTemporaries value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6532
        currentUserPrefs at:#'formatter.emptyLineAfterTemporaries' put:emptyLineAfterTemporaries value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6533
        currentUserPrefs at:#'formatter.spaceAfterReturnToken' put:spaceAfterReturnToken value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6534
        currentUserPrefs at:#'formatter.spaceAfterKeywordSelector' put:spaceAfterKeywordSelector value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6535
        currentUserPrefs at:#'formatter.cStyleBlocks' put:cStyleBlocks value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6536
        currentUserPrefs at:#'formatter.blockArgumentsOnNewLine' put:blockArgumentsOnNewLine value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6537
        currentUserPrefs at:#'formatter.maxLengthForSingleLineBlocks' put:maxLengthForSingleLineBlocks value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6538
        RBFormatter
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6539
            tabIndent:tabIndent value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6540
            spaceAroundTemporaries:spaceAroundTemporaries value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6541
            emptyLineAfterTemporaries:emptyLineAfterTemporaries value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6542
            spaceAfterReturnToken:spaceAfterReturnToken value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6543
            spaceAfterKeywordSelector:spaceAfterKeywordSelector value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6544
            cStyleBlocks:cStyleBlocks value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6545
            blockArgumentsOnNewLine:blockArgumentsOnNewLine value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6546
            maxLengthForSingleLineBlocks:maxLengthForSingleLineBlocks value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6547
    ] ifFalse: [
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6548
        (UserPreferences reset; current) addAll: oldUserPreferences
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6549
    ].
4398
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  6550
"
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  6551
    self formattingConfigurationDialog
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  6552
"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6553
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6554
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6555
syntaxColorConfigurationDialog
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6556
    |box frame exampleView y
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6557
     resources exampleText coloredText recolorAction
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6558
     syntaxColor syntaxColors colorMenu oldUserPreferences
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6559
     syntaxEmphasises syntaxColorSelector syntaxEmphasisSelector syntaxColoringBox
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6560
     syntaxEmphasisesBox syntaxColoringResetButton b resetList
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6561
     resetListBox currentUserPrefs|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6562
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6563
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6564
    currentUserPrefs := UserPreferences current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6565
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6566
    exampleText :=
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6567
'methodSelector:methodArg
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6568
    "method comment:
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6569
     some stupid code to show the current settings"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6570
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6571
    |methodVar|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6572
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6573
    "/ another comment ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6574
    self at:methodArg.        "/ a message
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6575
    self fooBarBaz:methodVar. "/ a bad message
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6576
    methodVar := Array new:1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6577
    unknonVar := 1.           "/ a bad variable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6578
    UnknonVar := 1.           "/ another bad variable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6579
    "self bar:methodVar.  detect commented code easily"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6580
    1 to:5 do:[:i | self at:i + 1].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6581
    Transcript showCR:''some string'' , #someSymbol.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6582
    ^ self.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6583
'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6584
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6585
    coloredText := '' asValue.
12928
a59e4bd2adcc Do not use obsolete methods
Stefan Vogel <sv@exept.de>
parents: 12842
diff changeset
  6586
    recolorAction := [ coloredText value:(SyntaxHighlighter formatMethodSource:exampleText in:nil) ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6587
    recolorAction value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6588
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6589
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6590
    "/ create a box on those values ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6591
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6592
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6593
    box label:(resources string:'Syntax Colors').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6594
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6595
    frame := View new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6596
    frame extent:1.0 @ 200.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6597
    frame borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6598
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6599
    exampleView := HVScrollableView for:TextView in:frame.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6600
    exampleView model:coloredText.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6601
    exampleView origin:0.0@0.0 corner:1.0@1.0; inset:2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6602
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6603
    frame topInset:box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6604
    box addComponent:frame withExtent:1.0@200.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6605
    box makeTabable:exampleView.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6606
    frame width:1.0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6607
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6608
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6609
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6610
    oldUserPreferences := currentUserPrefs copy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6611
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6612
    syntaxColoringBox := box addComboListOn: (syntaxColors := SelectionInList with:UserPreferences syntaxColorNames initialSelection:1).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6613
    syntaxColorSelector    := [(syntaxColors selection replChar:$  withString: '') asLowercaseFirst asSymbol].
14086
f05ca0ec3ea8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14075
diff changeset
  6614
    syntaxEmphasisSelector := [((syntaxColorSelector value upToAll: 'Color'), 'Emphasis') asLowercaseFirst asSymbol].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6615
    syntaxColor := (currentUserPrefs perform: syntaxColorSelector value) asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6616
    colorMenu := ColorMenu new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6617
    colorMenu model: syntaxColor.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6618
    syntaxColor onChangeEvaluate:
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6619
        [currentUserPrefs at:  syntaxColorSelector value put: syntaxColor value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6620
         recolorAction value.].
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6621
    syntaxColors onChangeEvaluate:
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6622
        [|eVal|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6623
         syntaxColor value: (currentUserPrefs perform:syntaxColorSelector value).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6624
         eVal := currentUserPrefs perform: syntaxEmphasisSelector value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6625
         eVal isArray ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6626
            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
  6627
                eVal := #'red underwave'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6628
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6629
            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
  6630
                eVal := #'bold+red underwave'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6631
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6632
            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
  6633
                eVal := #'bold+red underline'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6634
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6635
            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
  6636
                eVal := #'italic+red underwave'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6637
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6638
            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
  6639
                eVal := #'italic+red underline'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6640
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6641
         ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6642
         syntaxEmphasises selection: eVal.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6643
         recolorAction value.].
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6644
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6645
    syntaxEmphasises := SelectionInList
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6646
                            with:#(
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6647
                                    normal
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6648
                                    underline
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6649
                                    #'red underline'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6650
                                    underwave
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6651
                                    #'red underwave'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6652
                                    bold
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6653
                                    boldUnderline
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6654
                                    #'bold+red underline'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6655
                                    boldUnderwave
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6656
                                    #'bold+red underwave'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6657
                                    italic
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6658
                                    italicUnderline
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6659
                                    #'italic+red underline'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6660
                                    italicUnderwave
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6661
                                    #'italic+red underwave'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6662
                                    reverse
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6663
                                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6664
                            initialSelection:1.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6665
    syntaxEmphasisesBox := box addComboListOn:syntaxEmphasises.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6666
    syntaxEmphasises
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6667
        onChangeEvaluate:[ |em|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6668
            em := syntaxEmphasises selection.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6669
            em notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6670
                em := em asSymbol.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6671
                em == #'red underline' ifTrue:[ em := Array with:#underline with:(#underlineColor->Color red)].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6672
                em == #'red underwave' ifTrue:[ em := Array with:#underwave with:(#underlineColor->Color red)].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6673
                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
  6674
                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
  6675
                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
  6676
                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
  6677
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6678
                currentUserPrefs at: syntaxEmphasisSelector value put:em.
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
            recolorAction value
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6681
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6682
    syntaxColors changed:#value. "/ to force initial update of emphasis
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6683
    box addComponent:colorMenu tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6684
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6685
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6686
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6687
    b := Button new label: (resources string:'reset to:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6688
    b action:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6689
        |resetSelector|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6690
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6691
        resetSelector := (currentUserPrefs listOfPredefinedSyntaxColoringSchemes
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6692
                             collect:[:eachEntry | eachEntry first])
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6693
                                 at:resetList selectionIndex.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6694
        currentUserPrefs perform:resetSelector.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6695
        recolorAction value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6696
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6697
    syntaxColoringResetButton := box addComponent:b.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6698
    box makeTabable:syntaxColoringResetButton.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6699
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6700
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6701
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6702
    resetList := SelectionInList
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6703
                            with:(currentUserPrefs listOfPredefinedSyntaxColoringSchemes
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6704
                                        collect:[:eachEntry | eachEntry second])
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6705
                            initialSelection:1.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6706
    resetListBox := box addComboListOn:resetList.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6707
    box makeTabable:resetListBox.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6708
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6709
    syntaxColoringBox enable.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6710
    colorMenu enable.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6711
    syntaxEmphasisesBox enable.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6712
    syntaxColoringResetButton enable.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6713
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6714
    box
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6715
"/        addHelpButtonFor:'Launcher/sourceSettings.html';
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6716
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6717
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6718
    box stickAtBottomWithVariableHeight:frame.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6719
    box stickAtBottomWithFixHeight:syntaxColoringBox.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6720
    box stickAtBottomWithFixHeight:syntaxEmphasisesBox.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6721
    box stickAtBottomWithFixHeight:colorMenu.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6722
    box stickAtBottomWithFixHeight:syntaxColoringResetButton left:0.0 right:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6723
    box stickAtBottomWithFixHeight:resetListBox left:0.5 right:1.0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6724
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6725
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6726
    "/ show the box ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6727
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6728
    box extent:600@400.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6729
    box openModal.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6730
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6731
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6732
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6733
    "/
5944
4fef6e1d18ff Use #addAll: instead of #declareAllFrom:, since #declareAllFrom:
Stefan Vogel <sv@exept.de>
parents: 5917
diff changeset
  6734
    box accepted ifFalse: [
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6735
        (UserPreferences reset; current) addAll:oldUserPreferences
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6736
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6737
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6738
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6739
    "Modified: / 16.4.1998 / 17:18:16 / ca"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6740
    "Modified: / 7.7.1999 / 00:27:02 / cg"
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  6741
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  6742
2596
a2c3d90290ba formatter setup added;
Claus Gittinger <cg@exept.de>
parents: 2584
diff changeset
  6743
!AbstractLauncherApplication::LauncherDialogs class methodsFor:'interface specs'!
a2c3d90290ba formatter setup added;
Claus Gittinger <cg@exept.de>
parents: 2584
diff changeset
  6744
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6745
cvsSetupSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6746
    "This resource specification was automatically generated
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6747
     by the UIPainter of ST/X."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6748
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6749
    "Do not manually edit this!! If it is corrupted,
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6750
     the UIPainter may not be able to read the specification."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6751
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6752
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6753
     UIPainter new openOnClass:AbstractLauncherApplication::LauncherDialogs andSelector:#cvsSetupSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6754
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6755
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6756
    <resource: #canvas>
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6757
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6758
    ^
5153
0030b86728bf Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 5146
diff changeset
  6759
     #(FullSpec
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6760
        name: cvsSetupSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6761
        window:
5153
0030b86728bf Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 5146
diff changeset
  6762
       (WindowSpec
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6763
          label: 'CVS Setup'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6764
          name: 'CVS Setup'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6765
          min: (Point 436 316)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6766
          bounds: (Rectangle 14 46 450 400)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6767
        )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6768
        component:
5153
0030b86728bf Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 5146
diff changeset
  6769
       (SpecCollection
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6770
          collection: (
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6771
           (LabelSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6772
              label: 'CVS BinDirectory:'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6773
              name: 'Label1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6774
              layout: (LayoutFrame 0 0.0 36 0 40 0.25 53 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6775
              level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6776
              translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6777
              adjust: right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6778
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6779
           (InputFieldSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6780
              name: 'BinDirectoryField'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6781
              layout: (LayoutFrame 44 0.25 34 0 -1 1 56 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6782
              tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6783
              model: cvsBinDirectoryHolder
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6784
              acceptChannel: acceptChannel
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6785
              acceptOnPointerLeave: false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6786
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6787
           (DividerSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6788
              name: 'Separator3'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6789
              layout: (LayoutFrame 0 0.0 60 0 0 1.0 64 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6790
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6791
           (LabelSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6792
              label: 'CVS SourceCodeManager setup'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6793
              name: 'label'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6794
              layout: (LayoutFrame 1 0.0 3 0 -1 1.0 20 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6795
              translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6796
              adjust: left
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6797
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6798
           (LabelSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6799
              label: 'CVSRoot default:'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6800
              name: 'defaultCvsRootLabel'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6801
              layout: (LayoutFrame 0 0.0 71 0 40 0.25 88 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6802
              level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6803
              translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6804
              adjust: right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6805
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6806
           (ComboBoxSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6807
              name: 'cvsRootComboBox'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6808
              layout: (LayoutFrame 44 0.25 71 0 -1 1.0 93 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6809
              tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6810
              model: cvsRootHolder
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6811
              immediateAccept: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6812
              acceptOnLeave: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6813
              acceptOnReturn: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6814
              acceptOnTab: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6815
              acceptOnLostFocus: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6816
              acceptChannel: acceptChannel
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6817
              acceptOnPointerLeave: false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6818
              comboList: cvsRootPrototypeList
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6819
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6820
           (DividerSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6821
              name: 'Separator1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6822
              layout: (LayoutFrame 0 0.0 96 0 0 1.0 100 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6823
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6824
           (LabelSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6825
              label: 'CVSRoot per Module:'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6826
              name: 'knownModulesLabel'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6827
              layout: (LayoutFrame 0 0.0 109 0 40 0.25 126 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6828
              translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6829
              adjust: right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6830
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6831
           (SequenceViewSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6832
              name: 'List1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6833
              layout: (LayoutFrame 44 0.25 104 0 -1 1 202 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6834
              tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6835
              model: selectedPerModuleRoot
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6836
              hasHorizontalScrollBar: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6837
              hasVerticalScrollBar: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6838
              miniScrollerHorizontal: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6839
              useIndex: false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6840
              sequenceList: listOfModules
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6841
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6842
           (LabelSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6843
              label: 'Module:'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6844
              name: 'moduleLabel'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6845
              layout: (LayoutFrame 0 0.0 209 0 40 0.25 226 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6846
              translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6847
              adjust: right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6848
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6849
           (InputFieldSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6850
              name: 'perModuleRootModuleEntryField'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6851
              layout: (LayoutFrame 44 0.25 205 0 -1 1 227 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6852
              tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6853
              model: perModuleRootModule
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6854
              acceptChannel: acceptChannel
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6855
              acceptOnPointerLeave: false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6856
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6857
           (LabelSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6858
              label: 'CVSRoot:'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6859
              name: 'cvsRootLabel'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6860
              layout: (LayoutFrame 0 0.0 236 0 40 0.25 253 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6861
              translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6862
              adjust: right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6863
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6864
           (ComboBoxSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6865
              name: 'perModuleRootComboBox'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6866
              layout: (LayoutFrame 44 0.25 232 0 -1 1.0 254 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6867
              tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6868
              model: perModuleRoot
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6869
              immediateAccept: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6870
              acceptOnLeave: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6871
              acceptOnReturn: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6872
              acceptOnTab: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6873
              acceptOnLostFocus: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6874
              acceptChannel: acceptChannel
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6875
              acceptOnPointerLeave: false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6876
              comboList: cvsRootPrototypeList
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6877
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6878
           (HorizontalPanelViewSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6879
              name: 'HorizontalPanel1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6880
              layout: (LayoutFrame 44 0.25 258 0 -1 1 289 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6881
              horizontalLayout: fitSpace
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6882
              verticalLayout: center
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6883
              horizontalSpace: 3
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6884
              verticalSpace: 3
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6885
              component:
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6886
             (SpecCollection
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6887
                collection: (
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6888
                 (ActionButtonSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6889
                    label: 'Add/Apply'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6890
                    name: 'addButton'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6891
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6892
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6893
                    model: addPerModuleRoot
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6894
                    extent: (Point 136 22)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6895
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6896
                 (ActionButtonSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6897
                    label: 'Remove'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6898
                    name: 'removeButton'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6899
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6900
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6901
                    model: removePerModuleRoot
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6902
                    enableChannel: removeEnabled
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6903
                    extent: (Point 137 22)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6904
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6905
                 )
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
           (DividerSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6910
              name: 'Separator2'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6911
              layout: (LayoutFrame 0 0.0 -45 1 0 1.0 -34 1)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6912
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6913
           (HorizontalPanelViewSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6914
              name: 'buttonPanel'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6915
              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
  6916
              horizontalLayout: fitSpace
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6917
              verticalLayout: center
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6918
              horizontalSpace: 3
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6919
              verticalSpace: 3
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6920
              ignoreInvisibleComponents: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6921
              reverseOrderIfOKAtLeft: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6922
              component:
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6923
             (SpecCollection
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6924
                collection: (
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6925
                 (ActionButtonSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6926
                    label: 'Cancel'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6927
                    name: 'cancelButton'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6928
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6929
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6930
                    model: cancel
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6931
                    extent: (Point 141 21)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6932
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6933
                 (ActionButtonSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6934
                    label: 'Help'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6935
                    name: 'helpButton'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6936
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6937
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6938
                    model: help
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6939
                    extent: (Point 141 21)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6940
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6941
                 (ActionButtonSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6942
                    label: 'OK'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6943
                    name: 'okButton'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6944
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6945
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6946
                    model: accept
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6947
                    isDefault: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6948
                    extent: (Point 142 21)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6949
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6950
                 )
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
        )
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6957
      )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6958
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6959
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6960
formatterDialogSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6961
    "This resource specification was automatically generated
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6962
     by the UIPainter of ST/X."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6963
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6964
    "Do not manually edit this!! If it is corrupted,
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6965
     the UIPainter may not be able to read the specification."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6966
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6967
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6968
     UIPainter new openOnClass:AbstractLauncherApplication::LauncherDialogs andSelector:#formatterDialogSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6969
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6970
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6971
    <resource: #canvas>
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6972
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6973
    ^
5153
0030b86728bf Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 5146
diff changeset
  6974
     #(FullSpec
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6975
        name: formatterDialogSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6976
        window:
5153
0030b86728bf Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 5146
diff changeset
  6977
       (WindowSpec
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6978
          label: 'Formatting parameters'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6979
          name: 'Formatting parameters'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6980
          min: (Point 10 10)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6981
          bounds: (Rectangle 14 46 610 629)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6982
        )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6983
        component:
5153
0030b86728bf Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 5146
diff changeset
  6984
       (SpecCollection
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6985
          collection: (
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6986
           (LabelSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6987
              label: 'Sample output:'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6988
              name: 'Label2'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6989
              layout: (LayoutFrame 0 0.0 4 0 0 1.0 26 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6990
              translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6991
              adjust: left
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6992
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6993
           (TextEditorSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6994
              name: 'sampleTextView'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6995
              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
  6996
              level: -1
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6997
              model: formattedText
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6998
              hasHorizontalScrollBar: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6999
              hasVerticalScrollBar: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7000
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7001
           (FramedBoxSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7002
              label: 'Parameters'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7003
              name: 'FramedBox1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7004
              layout: (LayoutFrame 0 0.0 -225 1 0 1.0 -30 1)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7005
              labelPosition: topLeft
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7006
              translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7007
              component:
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7008
             (SpecCollection
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7009
                collection: (
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7010
                 (LabelSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7011
                    label: 'Max length for single line blocks:'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7012
                    name: 'Label1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7013
                    layout: (LayoutFrame 185 0.0 127 0 66 0.7 153 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7014
                    level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7015
                    adjust: right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7016
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7017
                 (CheckBoxSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7018
                    label: 'Space around temporaries '
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7019
                    name: 'checkBox'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7020
                    layout: (LayoutFrame 2 0 3 0 260 0 32 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7021
                    level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7022
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7023
                    model: spaceAroundTemporaries
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7024
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7025
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7026
                 (CheckBoxSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7027
                    label: 'Blank line after local var declaration'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7028
                    name: 'CheckBox1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7029
                    layout: (LayoutFrame 267 0 3 0 567 0 32 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7030
                    level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7031
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7032
                    model: emptyLineAfterTemporaries
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7033
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7034
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7035
                 (CheckBoxSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7036
                    label: 'Space after ''^'''
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7037
                    name: 'CheckBox2'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7038
                    layout: (LayoutFrame 2 0 31 0 260 0 60 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7039
                    level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7040
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7041
                    model: spaceAfterReturnToken
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7042
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7043
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7044
                 (CheckBoxSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7045
                    label: 'Space after '':'' in keywords'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7046
                    name: 'CheckBox3'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7047
                    layout: (LayoutFrame 267 0 31 0 567 0 60 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7048
                    level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7049
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7050
                    model: spaceAfterKeywordSelector
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7051
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7052
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7053
                 (CheckBoxSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7054
                    label: 'C-Style blocks'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7055
                    name: 'CheckBox4'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7056
                    layout: (LayoutFrame 2 0 59 0 260 0 88 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7057
                    level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7058
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7059
                    model: cStyleBlocks
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7060
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7061
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7062
                 (InputFieldSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7063
                    name: 'editField'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7064
                    layout: (LayoutFrame 74 0.7 93 0 -38 1.0 119 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7065
                    level: -1
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7066
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7067
                    model: tabIndent
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7068
                    type: number
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7069
                    immediateAccept: false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7070
                    acceptOnLeave: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7071
                    acceptOnReturn: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7072
                    acceptOnTab: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7073
                    acceptOnLostFocus: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7074
                    acceptOnPointerLeave: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7075
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7076
                 (LabelSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7077
                    label: 'Indent:'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7078
                    name: 'label'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7079
                    layout: (LayoutFrame 242 0.0 93 0 66 0.7 119 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7080
                    level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7081
                    adjust: right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7082
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7083
                 (InputFieldSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7084
                    name: 'EntryField1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7085
                    layout: (LayoutFrame 74 0.7 127 0 -38 1.0 153 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7086
                    level: -1
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7087
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7088
                    model: maxLengthForSingleLineBlocks
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7089
                    type: number
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7090
                    immediateAccept: false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7091
                    acceptOnLeave: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7092
                    acceptOnReturn: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7093
                    acceptOnTab: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7094
                    acceptOnLostFocus: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7095
                    acceptOnPointerLeave: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7096
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7097
                 (PopUpListSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7098
                    label: 'Reset to...'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7099
                    name: 'PopUpList1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7100
                    layout: (LayoutFrame 2 0 129 0 127 0 151 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7101
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7102
                    model: resetValue
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7103
                    menu: resetList
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7104
                    useIndex: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7105
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7106
                 (CheckBoxSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7107
                    label: 'Block args on new line'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7108
                    name: 'CheckBox5'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7109
                    layout: (LayoutFrame 267 0 59 0 567 0 88 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7110
                    level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7111
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7112
                    model: blockArgumentsOnNewLine
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7113
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7114
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7115
                 )
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
           (HorizontalPanelViewSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7120
              name: 'horizontalPanelView'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7121
              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
  7122
              level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7123
              horizontalLayout: fitSpace
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7124
              verticalLayout: center
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7125
              horizontalSpace: 4
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7126
              verticalSpace: 4
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7127
              ignoreInvisibleComponents: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7128
              component:
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7129
             (SpecCollection
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7130
                collection: (
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7131
                 (ActionButtonSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7132
                    label: 'Cancel'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7133
                    name: 'button'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7134
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7135
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7136
                    model: cancel
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7137
                    useDefaultExtent: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7138
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7139
                 (ActionButtonSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7140
                    label: 'OK'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7141
                    name: 'Button1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7142
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7143
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7144
                    model: accept
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7145
                    isDefault: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7146
                    useDefaultExtent: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7147
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7148
                 )
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
        )
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7155
      )
2596
a2c3d90290ba formatter setup added;
Claus Gittinger <cg@exept.de>
parents: 2584
diff changeset
  7156
! !
a2c3d90290ba formatter setup added;
Claus Gittinger <cg@exept.de>
parents: 2584
diff changeset
  7157
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7158
!AbstractLauncherApplication::PackageLoadDialog class methodsFor:'documentation'!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7159
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7160
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
    handwritten q&d dialog to load packages.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7163
    TODO:
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7164
        rewrite using UI builder
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7165
"
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7166
! !
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7167
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7168
!AbstractLauncherApplication::PackageLoadDialog class methodsFor:'opening'!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7169
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7170
open
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7171
    self new openLoadPackageDialog
16209
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7172
!
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7173
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7174
openModal
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7175
    self new openLoadPackageDialogModal:true
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7176
! !
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7177
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7178
!AbstractLauncherApplication::PackageLoadDialog methodsFor:'initialize & release'!
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7179
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7180
initializeIcons
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7181
    folderIcon := ToolbarIconLibrary directoryOpen18x18Icon.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7182
    "/ folderHalfGreyIcon := ToolbarIconLibrary directoryOpenHalfGrey18x18Icon.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7183
    packageIcon := ToolbarIconLibrary packageOpen24x24Icon.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7184
    applicationIcon := ToolbarIconLibrary makeYellow22x22Icon1.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7185
    greyFolderIcon := folderIcon asGrayImageDepth:8.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7186
    greyPackageIcon := packageIcon asGrayImageDepth:8.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7187
    greyApplicationIcon := applicationIcon asGrayImageDepth:(applicationIcon depth min:8).
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7188
!
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7189
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7190
release
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7191
    |p|
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7192
    
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7193
    (p := backgroundPackageFindProcess) notNil ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7194
        p isDead ifFalse:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7195
            p terminate
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7196
        ]
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7197
    ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7198
    super release
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
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7201
!AbstractLauncherApplication::PackageLoadDialog methodsFor:'opening'!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7202
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7203
openLoadPackageDialog
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7204
    "open a dialog showing wellknown packages (listed in the packages directory)
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7205
     and offer to load the selected one(s).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7206
     TODO: make this a little app instead of an ad-hoc dialog, 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7207
     add remote packages (central goody repository?)"    
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7208
16209
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7209
    self openLoadPackageDialogModal:false.
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7210
!
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7211
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7212
openLoadPackageDialogModal:modal
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7213
    "open a dialog showing wellknown packages (listed in the packages directory)
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7214
     and offer to load the selected one(s).
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7215
     TODO: make this a little app instead of an ad-hoc dialog, 
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7216
     add remote packages (central goody repository?)"    
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7217
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7218
    |list dialog filter v   
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7219
     browse selectionChangeAction 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7220
     selectedPackageLabel infoView monticelloLabel|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7221
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7222
    alreadyLoadedString := (resources string:' (already loaded)') allItalic.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7223
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7224
    self initializeIcons.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7225
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7226
    selectedPackageHolder := ValueHolder with:nil.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7227
    infoTextHolder := ValueHolder with:nil.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7228
    filterHolder := ValueHolder with:nil.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7229
    itemsByPath := Dictionary new.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7230
    packageIdByItem := IdentityDictionary new.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7231
    pathByItem := IdentityDictionary new.  
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7232
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7233
    Class withoutUpdatingChangesDo:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7234
        myHierarchicalItemWithLabelAndIcon := 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7235
            HierarchicalItemWithLabelAndIcon 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7236
                subclass:#myHierarchicalItemWithLabelAndIcon
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7237
                instanceVariableNames:'type info'
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7238
                classVariableNames:''
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7239
                poolDictionaries:''
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7240
                category:nil
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7241
                inEnvironment:nil.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7242
            myHierarchicalItemWithLabelAndIcon compile:'type ^ type'.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7243
            myHierarchicalItemWithLabelAndIcon compile:'type:aSymbol type := aSymbol'.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7244
            myHierarchicalItemWithLabelAndIcon compile:'info ^ info'.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7245
            myHierarchicalItemWithLabelAndIcon compile:'info:anObject info := anObject'.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7246
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7247
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7248
    list := HierarchicalList new.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7249
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7250
    masterRoot := myHierarchicalItemWithLabelAndIcon new.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7251
    masterRoot icon:(ToolbarIconLibrary stxHomeIcon).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7252
    masterRoot label:(resources string:'local ').
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7253
    masterRoot type:#localRoot.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7254
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7255
    root := myHierarchicalItemWithLabelAndIcon new.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7256
    root icon:folderIcon.
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
  7257
    root label:((resources string:'[Compiled Packages]') asText allItalic withColor:Color grey).
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7258
    root type:#compiledPackagesRoot.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7259
    masterRoot add:root.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7260
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7261
    monticelloRoot := myHierarchicalItemWithLabelAndIcon new.
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
  7262
    monticelloLabel := ((resources string:'[Monticello Packages]') asText allItalic withColor:Color grey).
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7263
    monticelloRoot type:#monticelloRoot.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7264
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7265
    (MCRepositoryGroup isNil or:[MCRepositoryGroup isLoaded not]) ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7266
        monticelloRoot icon:greyFolderIcon.
16506
f8e9cf3bc8a7 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16446
diff changeset
  7267
        monticelloRoot label:monticelloLabel, (' (Monticello Support not Loaded)' withColor:Color grey).
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7268
    ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7269
        monticelloRoot icon:folderIcon.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7270
        monticelloRoot label:monticelloLabel.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7271
        self getMonticelloRepositories.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7272
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7273
    masterRoot add:monticelloRoot.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7274
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7275
    self readPackageTree.
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7276
    self readOtherPackageTreesInBackground.
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7277
    masterRoot expand.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7278
    root expand.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7279
    list root:masterRoot.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7280
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7281
    PreviousPackageDialogItems notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7282
        PreviousPackageDialogItems keysAndValuesDo:[:path :prevItem |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7283
            |newItem|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7284
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7285
            newItem := itemsByPath at:path ifAbsent:nil.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7286
            newItem notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7287
                prevItem isExpanded ifTrue:[ newItem expand ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7288
            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7289
        ].
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
    selectionChangeAction :=
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7293
        [:selectionIndices | self selectionChangeAction:selectionIndices].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7294
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7295
    dialog := Dialog new.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7296
    dialog label:(resources string:'Load Package').
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7297
    dialog addButton:(loadButton := Button label:(resources string:'Load') action:[self loadAction:false]) beReturnButton. 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7298
    dialog addButton:(loadAndBrowseButton := Button label:(resources string:'Load & Browse') action:[self loadAction:true]).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7299
    dialog addAbortButtonLabelled:(resources string:'Close').
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7300
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7301
    loadButton enabled:false.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7302
    loadAndBrowseButton enabled:false.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7303
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7304
    filter := EditField new.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7305
    filter emptyFieldReplacementText:(resources string:'Filter Pattern').
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7306
    filter immediateAccept:true.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7307
    filter model: filterHolder.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7308
    filterHolder onChangeEvaluate:[self filterChangedAction].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7309
    dialog
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7310
        addLabelledField:filter
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7311
        label:(resources string:'Quick Find:') 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7312
        adjust:#left tabable:true from:0.0 to:1.0 separateAtX:150.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7313
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7314
    "/ dialog addComponent:filter.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7315
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7316
    v := HVScrollableView for:HierarchicalListView.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7317
    hierarchicalListView := v scrolledView.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7318
    hierarchicalListView multipleSelectOk:true.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7319
    hierarchicalListView preferredExtent:(400 @ 300).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7320
    hierarchicalListView doubleClickAction:[:index | self loadAction:false. dialog okPressed].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7321
    hierarchicalListView list:list.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7322
    hierarchicalListView action:selectionChangeAction.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7323
    hierarchicalListView menuHolder:[ self itemMenu].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7324
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7325
    dialog addComponent:v.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7326
    selectedPackageLabel := dialog addTextLabelOn:(selectedPackageHolder) adjust:#left.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7327
    infoView := dialog addTextBoxOn:infoTextHolder class:TextView withNumberOfLines:5 hScrollable:true vScrollable:true.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7328
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7329
    dialog stickAtBottomWithVariableHeight:v.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7330
    dialog stickAtBottomWithFixHeight:selectedPackageLabel.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7331
    dialog stickAtBottomWithFixHeight:infoView.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7332
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7333
    PreviousPackageDialogExtent notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7334
        dialog extent:PreviousPackageDialogExtent
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7335
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7336
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7337
    browse := false.
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7338
    dialog application:self.
16209
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7339
    modal ifTrue:[
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7340
        dialog openModalAtPointer.
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7341
    ] ifFalse:[
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7342
        dialog openModelessAtPointer.
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7343
    ].
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7344
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7345
    "/ remember the expand/collapse status
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7346
    PreviousPackageDialogItems := itemsByPath.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7347
    PreviousPackageDialogExtent := dialog extent.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7348
! !
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7349
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7350
!AbstractLauncherApplication::PackageLoadDialog methodsFor:'private'!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7351
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7352
addItemWithPackagePath:path target:target asApplication:isApplication toRoot:aRoot
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7353
    |item isAlreadyLoaded defClass packageID|
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7354
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7355
    "/ see if already loaded
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
    packageID := (path size > 1) 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7358
                    ifTrue:[ path first , ':' , ((path copyFrom:2) asStringWith:$/) ]
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7359
                    ifFalse:[ path first ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7360
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7361
    item := self getItemByPath:path packageID:packageID under:aRoot.
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
    isAlreadyLoaded := false.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7364
    Error handle:[:ex |
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
  7365
        item label:(item label , (' ERROR - please rebuild!!' withColor:Color red)).
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7366
    ] do:[    
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7367
        isAlreadyLoaded := 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7368
            (defClass := ProjectDefinition definitionClassForPackage:packageID) notNil
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7369
            and:[ defClass isLoaded
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7370
            and:[ defClass isFullyLoaded ]].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7371
    ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7372
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7373
    target notNil ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7374
        ((target startsWith:'lib ') or:[(target startsWith:'app ')]) ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7375
            pathByItem at:item put:(target copyFrom:(target indexOfSeparator + 1)) withoutSeparators.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7376
        ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7377
    ].
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
    "/ 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
  7380
    (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
  7381
        isAlreadyLoaded ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7382
            item icon:(isApplication ifTrue:[greyApplicationIcon] ifFalse:[greyPackageIcon]). 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7383
            item label:(item label , alreadyLoadedString)
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7384
        ] ifFalse:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7385
            item icon:(isApplication ifTrue:[applicationIcon] ifFalse:[packageIcon]). 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7386
        ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7387
    ].
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
    "/ if it is not already loaded, make all parents non-grey
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7390
    isAlreadyLoaded ifFalse:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7391
        path size-1 to:1 by:-1 do:[:n |
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7392
            |parentPath parentItem|
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7393
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7394
            parentPath := path copyTo:n.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7395
            parentItem := self getItemByPath:parentPath packageID:packageID under:aRoot.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7396
            parentItem icon == greyFolderIcon ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7397
                parentItem icon:folderIcon.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7398
"/                        ] ifFalse:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7399
"/                            parentItem icon == greyApplicationIcon ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7400
"/                                parentItem icon:applicationIcon.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7401
"/                            ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7402
            ].
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
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7407
filterChangedAction
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7408
    |matchingItems filterPattern isMatch firstMatchingItem|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7409
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7410
    filterPattern := filterHolder value.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7411
    filterPattern isEmptyOrNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7412
        "/ nothing
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7413
        root recursiveDo:[:item |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7414
            item label:(item label copy asText allNonBold withoutAnyColorEmphasis).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7415
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7416
    ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7417
        filterPattern := filterPattern asLowercase.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7418
        isMatch := filterPattern includesMatchCharacters.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7419
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7420
        matchingItems := OrderedCollection new.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7421
        masterRoot recursiveDo:[:item |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7422
            |itemLabel itemPackage|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7423
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7424
            itemLabel := item label.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7425
            itemPackage := packageIdByItem at:item ifAbsent:''.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7426
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7427
            ((isMatch and:[itemLabel matches:filterPattern caseSensitive:false])
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7428
                or:[ (isMatch not and:[ itemLabel asLowercase includesString:filterPattern ])
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7429
                or:[ (isMatch and:[itemPackage matches:filterPattern caseSensitive:false])
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7430
                or:[ isMatch not and:[ itemPackage asLowercase includesString:filterPattern ]]]])
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7431
            ifTrue:[ 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7432
                matchingItems add:item.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7433
            ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7434
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7435
        matchingItems isEmpty ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7436
            "/ nothing found
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7437
            root recursiveDo:[:item |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7438
                item label:(item label copy asText allNonBold withoutAnyColorEmphasis).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7439
            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7440
            Screen current beep.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7441
        ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7442
            "/ collapse all and fully expand all matching items
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7443
            masterRoot recursiveDo:[:item |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7444
                item collapse.
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
  7445
                item label:(item label copy asText allNonBold withColor:Color grey).
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7446
            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7447
            firstMatchingItem := nil.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7448
            matchingItems do:[:item |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7449
                item label:(item label copy asText allBold withoutAnyColorEmphasis).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7450
                item makeVisible.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7451
                firstMatchingItem := firstMatchingItem ? item.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7452
            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7453
            hierarchicalListView makeLineVisible:firstMatchingItem listIndex.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7454
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7455
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7456
!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7457
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7458
getItemByPath:path packageID:packageID under:aRoot
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7459
    "/ ensures an item for a path and returns it.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7460
    "/ if not already present, the item is created as a folder
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7461
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7462
    |item parent subPackageID|
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 := path isEmpty   
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7465
            ifTrue:[aRoot]
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7466
            ifFalse:[ itemsByPath at:( {aRoot label},path) ifAbsent:nil ].
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7467
    item isNil ifTrue:[
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7468
        parent := self getItemByPath:(path copyButLast) packageID:packageID under:aRoot.
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7469
        item := myHierarchicalItemWithLabelAndIcon new
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7470
                children:#();
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7471
                icon:greyFolderIcon; 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7472
                label:path last.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7473
        parent add:item.
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7474
        itemsByPath at:( {aRoot label},path) put:item.
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7475
        subPackageID := path size > 1 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7476
                        ifTrue:[ path first , ':' , ((path copyFrom:2) asStringWith:$/) ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7477
                        ifFalse:[ path first ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7478
        packageIdByItem at:item put:subPackageID.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7479
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7480
    ^ item
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7481
!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7482
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7483
getMonticelloRepositories
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7484
    (MCRepositoryGroup default repositories 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7485
        asSortedCollection:[:a :b |a displayString < b displayString])
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7486
            do:[:each |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7487
                |reposItem|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7488
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7489
                reposItem := myHierarchicalItemWithLabelAndIcon new.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7490
                reposItem icon:folderIcon.
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
  7491
                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
  7492
                reposItem type:#monticelloRepository.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7493
                reposItem info:each.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7494
                monticelloRoot add:reposItem.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7495
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7496
                each allPackageNames asSortedCollection do:[:eachPackage |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7497
                    |packageItem|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7498
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7499
                    packageItem := myHierarchicalItemWithLabelAndIcon new.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7500
                    packageItem icon:packageIcon.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7501
                    packageItem label:eachPackage.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7502
                    packageItem type:#monticelloPackage.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7503
                    reposItem add:packageItem.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7504
                ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7505
            ].
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
itemMenu
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7509
    |item m itemType package defClass|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7510
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7511
    hierarchicalListView selectionValue notEmptyOrNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7512
        item := hierarchicalListView selectionValue first.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7513
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7514
        itemType := item type.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7515
        ( 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7516
            #( #localRoot #monticelloRoot #compiledPackagesRoot ) includes:itemType
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7517
        ) ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7518
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7519
            package := packageIdByItem at:item ifAbsent:nil.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7520
            package notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7521
                defClass := package asPackageId projectDefinitionClass.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7522
            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7523
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7524
            m := Menu new.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7525
            m addItem:(MenuItem 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7526
                        label: (resources string:'Load')
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7527
                        itemValue: 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7528
                            [
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7529
                                package notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7530
                                    self loadPackageAndUpdate:package browse:false subPackages:false item:item.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7531
                                    "/ loadPackageAndUpdate value:package value:false value:item.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7532
                                ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7533
                            ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7534
                        enabled:package notNil).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7535
            m addItem:(MenuItem 
16331
0adc4c21c1b1 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16330
diff changeset
  7536
                        label: (resources string:'Load with All Subpackages')
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7537
                        itemValue: 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7538
                            [
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7539
                                package notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7540
                                    self loadPackageAndUpdate:package browse:false subPackages:true item:item.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7541
                                    "/ loadPackageAndUpdate value:package value:false value:item.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7542
                                ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7543
                            ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7544
                        enabled:package notNil).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7545
            m addSeparator. 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7546
            m addItem:(MenuItem 
16297
52295067aa1a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16235
diff changeset
  7547
                        label: (resources string:'Open File Browser on Package''s Folder')
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7548
                        itemValue: 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7549
                            [
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7550
                                |dir|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7551
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7552
                                package notNil ifTrue:[
16717
814e3fa20205 Issue 98: Use #getPackageDirectoryForPackage: instead of #packageDirectoryForPackageId:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16689
diff changeset
  7553
                                    dir := Smalltalk getPackageDirectoryForPackage:package.
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7554
                                    dir notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7555
                                        FileBrowser default openOn:dir.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7556
                                    ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7557
                                        Dialog warn:(resources string:'Directory not present/readable: "%1"' with:dir)
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7558
                                    ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7559
                                ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7560
                            ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7561
                        enabled:package notNil).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7562
            m addSeparator. 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7563
            m addItem:(MenuItem 
16297
52295067aa1a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16235
diff changeset
  7564
                        label: (resources string:'Browse Package Definition')
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7565
                        itemValue: 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7566
                            [
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7567
                                defClass notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7568
                                    SystemBrowser default openInClass:defClass class
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7569
                                ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7570
                            ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7571
                        enabled:defClass notNil).
16297
52295067aa1a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16235
diff changeset
  7572
            m addItem:(MenuItem 
52295067aa1a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16235
diff changeset
  7573
                        label: (resources string:'Browse Package')
52295067aa1a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16235
diff changeset
  7574
                        itemValue: 
52295067aa1a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16235
diff changeset
  7575
                            [
52295067aa1a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16235
diff changeset
  7576
                                Tools::NewSystemBrowser openOnPackage:package
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
                        enabled:defClass notNil).
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7579
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7580
            item type == #monticelloPackage ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7581
                m addItem:(MenuItem 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7582
                            label: (resources string:'Browse Monticello Package')
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7583
                            itemValue: [
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7584
                                |repos|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7585
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7586
                                repos := item parent info.                    
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7587
                                MCRepositoryBrowser openOnRepository:repos forPackage:item label.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7588
                            ]).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7589
            ].
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
    ^ m
16717
814e3fa20205 Issue 98: Use #getPackageDirectoryForPackage: instead of #packageDirectoryForPackageId:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16689
diff changeset
  7593
814e3fa20205 Issue 98: Use #getPackageDirectoryForPackage: instead of #packageDirectoryForPackageId:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16689
diff changeset
  7594
    "Modified: / 28-06-2016 / 07:55:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
16076
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
16717
814e3fa20205 Issue 98: Use #getPackageDirectoryForPackage: instead of #packageDirectoryForPackageId:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16689
diff changeset
  7982
        dir := Smalltalk getPackageDirectoryForPackage:package.
16076
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.
16717
814e3fa20205 Issue 98: Use #getPackageDirectoryForPackage: instead of #packageDirectoryForPackageId:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16689
diff changeset
  8033
814e3fa20205 Issue 98: Use #getPackageDirectoryForPackage: instead of #packageDirectoryForPackageId:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16689
diff changeset
  8034
    "Modified: / 28-06-2016 / 07:55:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8035
!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8036
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8037
updateAction:whatChanged parameter:parameter
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8038
    |item isLoaded packageID|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8039
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8040
    "/ update the corresponding tree item
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8041
    (whatChanged == #postPackageLoad or:[whatChanged == #postLoad]) ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8042
        parameter notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8043
            packageID := parameter asSymbol.
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8044
            item := self getItemByPath:(packageID splitByAny:':/') packageID:packageID under:root.
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8045
            item notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8046
                isLoaded := (ProjectDefinition definitionClassForPackage:packageID) notNil.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8047
                isLoaded ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8048
                    (item icon == applicationIcon or:[item icon == packageIcon]) ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8049
                        item icon:((item icon == applicationIcon) ifTrue:[greyApplicationIcon] ifFalse:[greyPackageIcon]). 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8050
                        item label:(item label , alreadyLoadedString)
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
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8056
! !
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8057
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  8058
!AbstractLauncherApplication class methodsFor:'documentation'!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  8059
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  8060
version
15699
292b370e5431 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15506
diff changeset
  8061
    ^ '$Header$'
10907
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  8062
!
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  8063
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  8064
version_CVS
15699
292b370e5431 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15506
diff changeset
  8065
    ^ '$Header$'
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  8066
!
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  8067
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  8068
version_SVN
15699
292b370e5431 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15506
diff changeset
  8069
    ^ '$Id$'
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  8070
! !
12499
3f6769e6733c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12067
diff changeset
  8071