StandardSystemView.st
author claus
Mon, 06 Feb 1995 01:38:04 +0100
changeset 89 ea2bf46eb669
parent 82 98a70bce6d51
child 94 8931597dfa3c
permissions -rw-r--r--
*** empty log message ***
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
48194c26a46c Initial revision
claus
parents:
diff changeset
     1
"
6
7ee0cfde237d *** empty log message ***
claus
parents: 5
diff changeset
     2
 COPYRIGHT (c) 1989 by Claus Gittinger
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
     3
	      All Rights Reserved
0
48194c26a46c Initial revision
claus
parents:
diff changeset
     4
48194c26a46c Initial revision
claus
parents:
diff changeset
     5
 This software is furnished under a license and may be used
48194c26a46c Initial revision
claus
parents:
diff changeset
     6
 only in accordance with the terms of that license and with the
48194c26a46c Initial revision
claus
parents:
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
48194c26a46c Initial revision
claus
parents:
diff changeset
     8
 be provided or otherwise made available to, or used by, any
48194c26a46c Initial revision
claus
parents:
diff changeset
     9
 other person.  No title to or ownership of the software is
48194c26a46c Initial revision
claus
parents:
diff changeset
    10
 hereby transferred.
48194c26a46c Initial revision
claus
parents:
diff changeset
    11
"
48194c26a46c Initial revision
claus
parents:
diff changeset
    12
48194c26a46c Initial revision
claus
parents:
diff changeset
    13
View subclass:#StandardSystemView
24
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
    14
       instanceVariableNames:'label icon iconView iconLabel
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
    15
			      minExtent maxExtent'
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
    16
       classVariableNames:   'DefaultIcon TakeFocusWhenMapped'
0
48194c26a46c Initial revision
claus
parents:
diff changeset
    17
       poolDictionaries:''
48194c26a46c Initial revision
claus
parents:
diff changeset
    18
       category:'Views-Basic'
48194c26a46c Initial revision
claus
parents:
diff changeset
    19
!
48194c26a46c Initial revision
claus
parents:
diff changeset
    20
48194c26a46c Initial revision
claus
parents:
diff changeset
    21
StandardSystemView comment:'
46
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    22
COPYRIGHT (c) 1989 by Claus Gittinger
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
    23
	      All Rights Reserved
54
29a6b2f8e042 *** empty log message ***
claus
parents: 46
diff changeset
    24
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
    25
$Header: /cvs/stx/stx/libview/StandardSystemView.st,v 1.15 1995-02-06 00:37:53 claus Exp $
46
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    26
'!
0
48194c26a46c Initial revision
claus
parents:
diff changeset
    27
46
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    28
!StandardSystemView class methodsFor:'documentation'!
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    29
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    30
copyright
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    31
"
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    32
 COPYRIGHT (c) 1989 by Claus Gittinger
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
    33
	      All Rights Reserved
0
48194c26a46c Initial revision
claus
parents:
diff changeset
    34
46
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    35
 This software is furnished under a license and may be used
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    36
 only in accordance with the terms of that license and with the
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    37
 inclusion of the above copyright notice.   This software may not
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    38
 be provided or otherwise made available to, or used by, any
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    39
 other person.  No title to or ownership of the software is
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    40
 hereby transferred.
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    41
"
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    42
!
0
48194c26a46c Initial revision
claus
parents:
diff changeset
    43
46
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    44
version
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    45
"
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
    46
$Header: /cvs/stx/stx/libview/StandardSystemView.st,v 1.15 1995-02-06 00:37:53 claus Exp $
46
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    47
"
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    48
!
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    49
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    50
documentation
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    51
"
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    52
    I represent topViews i.e. those views which have a title-label,
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
    53
    an icon etc. Usually StandardSystemViews are subclassed for
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
    54
    special views.
46
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    55
"
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    56
! !
0
48194c26a46c Initial revision
claus
parents:
diff changeset
    57
48194c26a46c Initial revision
claus
parents:
diff changeset
    58
!StandardSystemView class methodsFor:'defaults'!
48194c26a46c Initial revision
claus
parents:
diff changeset
    59
48194c26a46c Initial revision
claus
parents:
diff changeset
    60
defaultExtent
48194c26a46c Initial revision
claus
parents:
diff changeset
    61
    "topviews extent is (0.6 @ 0.6) of screen by default"
48194c26a46c Initial revision
claus
parents:
diff changeset
    62
48194c26a46c Initial revision
claus
parents:
diff changeset
    63
    ^ (Display width // 3 * 2) @ (Display height // 3 * 2)
81
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
    64
!
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
    65
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
    66
defaultLabel
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
    67
    "return the default label for views of my kind.
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
    68
     This can be redefined in subclasses or overwritten in
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
    69
     initialize methods."
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
    70
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
    71
    ^ 'aView'
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
    72
!
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
    73
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
    74
defaultIcon
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
    75
    "return the default icon for views.
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
    76
     This can be redefined in subclasses or overwritten in
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
    77
     initialize methods."
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
    78
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
    79
    DefaultIcon isNil ifTrue:[
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
    80
	DefaultIcon := Image fromFile:'bitmaps/SmalltalkX.xbm'
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
    81
    ].
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
    82
    ^ DefaultIcon
0
48194c26a46c Initial revision
claus
parents:
diff changeset
    83
! !
48194c26a46c Initial revision
claus
parents:
diff changeset
    84
48194c26a46c Initial revision
claus
parents:
diff changeset
    85
!StandardSystemView class methodsFor:'startup'!
48194c26a46c Initial revision
claus
parents:
diff changeset
    86
46
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    87
open
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    88
    "create, realize the view - this topview and all its subviews will
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    89
     run as a separate process with its own windowGroup"
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    90
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    91
    ^ self new open 
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    92
!
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    93
0
48194c26a46c Initial revision
claus
parents:
diff changeset
    94
start
12
9f0995fac1fa *** empty log message ***
claus
parents: 6
diff changeset
    95
    "create, realize the view - this topview and all its subviews will
81
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
    96
     run as a separate process with its own windowGroup.
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
    97
     This method exists for backward compatibility - use open."
0
48194c26a46c Initial revision
claus
parents:
diff changeset
    98
46
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
    99
    ^ self open
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   100
! !
48194c26a46c Initial revision
claus
parents:
diff changeset
   101
48194c26a46c Initial revision
claus
parents:
diff changeset
   102
!StandardSystemView class methodsFor:'instance creation'!
48194c26a46c Initial revision
claus
parents:
diff changeset
   103
48194c26a46c Initial revision
claus
parents:
diff changeset
   104
model:aModel label:aLabel minimumSize:minExtent
81
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   105
    "ST80-style instance creation"
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   106
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   107
    |newView|
48194c26a46c Initial revision
claus
parents:
diff changeset
   108
48194c26a46c Initial revision
claus
parents:
diff changeset
   109
    newView := self origin:nil 
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   110
		    extent:minExtent
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   111
		     label:aLabel 
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   112
		      icon:nil
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   113
		 minExtent:minExtent
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   114
		 maxExtent:nil.
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   115
    newView model:aModel.
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   116
"/    newView controller:(self defaultController new view:newView).
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   117
    ^ newView
48194c26a46c Initial revision
claus
parents:
diff changeset
   118
!
48194c26a46c Initial revision
claus
parents:
diff changeset
   119
48194c26a46c Initial revision
claus
parents:
diff changeset
   120
label:aLabel
48194c26a46c Initial revision
claus
parents:
diff changeset
   121
    "create a new topView and define its label"
48194c26a46c Initial revision
claus
parents:
diff changeset
   122
48194c26a46c Initial revision
claus
parents:
diff changeset
   123
    ^ self origin:nil extent:nil
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   124
	   label:aLabel icon:nil
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   125
	   minExtent:nil maxExtent:nil
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   126
!
48194c26a46c Initial revision
claus
parents:
diff changeset
   127
48194c26a46c Initial revision
claus
parents:
diff changeset
   128
label:aLabel minExtent:anExtent
81
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   129
    "create a new topView and define its label and minimum extent"
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   130
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   131
    ^ self origin:nil extent:nil
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   132
	   label:aLabel icon:nil
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   133
	   minExtent:anExtent maxExtent:nil
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   134
!
48194c26a46c Initial revision
claus
parents:
diff changeset
   135
48194c26a46c Initial revision
claus
parents:
diff changeset
   136
label:aLabel icon:aForm
81
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   137
    "create a new topView and define its label and icon"
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   138
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   139
    ^ self origin:nil extent:nil
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   140
	   label:aLabel icon:aForm
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   141
	   minExtent:nil maxExtent:nil
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   142
!
48194c26a46c Initial revision
claus
parents:
diff changeset
   143
48194c26a46c Initial revision
claus
parents:
diff changeset
   144
label:aLabel icon:aForm minExtent:anExtent
81
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   145
    "create a new topView and define its label, icon and minumum extent"
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   146
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   147
    ^ self origin:nil extent:nil
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   148
	   label:aLabel icon:aForm
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   149
	   minExtent:anExtent maxExtent:nil
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   150
!
48194c26a46c Initial revision
claus
parents:
diff changeset
   151
48194c26a46c Initial revision
claus
parents:
diff changeset
   152
label:aLabel icon:aForm minExtent:minExtent maxExtent:maxExtent
81
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   153
    "create a new topView and define its label, icon, min and max extents"
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   154
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   155
    ^ self origin:nil extent:nil
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   156
	   label:aLabel icon:aForm
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   157
	   minExtent:minExtent maxExtent:maxExtent
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   158
!
48194c26a46c Initial revision
claus
parents:
diff changeset
   159
48194c26a46c Initial revision
claus
parents:
diff changeset
   160
origin:anOrigin extent:anExtent label:aLabel
81
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   161
    "create a new topView and define its origin, extent and label"
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   162
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   163
    ^ self origin:anOrigin extent:anExtent
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   164
	   label:aLabel icon:nil
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   165
	   minExtent:nil maxExtent:nil
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   166
!
48194c26a46c Initial revision
claus
parents:
diff changeset
   167
48194c26a46c Initial revision
claus
parents:
diff changeset
   168
origin:anOrigin label:aLabel icon:aForm
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   169
		minExtent:minExtent maxExtent:maxExtent
81
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   170
    "create a new topView and define its origin, extent, label, icon
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   171
     and extent-boundaries."
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   172
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   173
    ^ self origin:anOrigin extent:nil
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   174
	   label:aLabel icon:aForm
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   175
	   minExtent:minExtent maxExtent:maxExtent
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   176
!
48194c26a46c Initial revision
claus
parents:
diff changeset
   177
81
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   178
extent:anExtent label:aLabel minExtent:minExtent
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   179
    "create a new topView and define its extent, label and minumum extent"
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   180
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   181
    ^ self origin:nil extent:anExtent
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   182
	   label:aLabel icon:nil
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   183
	   minExtent:minExtent maxExtent:nil
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   184
!
48194c26a46c Initial revision
claus
parents:
diff changeset
   185
48194c26a46c Initial revision
claus
parents:
diff changeset
   186
extent:anExtent label:aLabel icon:aForm
81
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   187
    "create a new topView and define its extent, label and icon"
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   188
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   189
    ^ self origin:nil extent:anExtent
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   190
	   label:aLabel icon:aForm
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   191
	   minExtent:nil maxExtent:nil
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   192
!
48194c26a46c Initial revision
claus
parents:
diff changeset
   193
81
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   194
extent:anExtent label:aLabel icon:aForm minExtent:minExtent
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   195
    ^ self origin:nil extent:anExtent
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   196
	   label:aLabel icon:aForm
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   197
	   minExtent:minExtent maxExtent:nil
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   198
!
48194c26a46c Initial revision
claus
parents:
diff changeset
   199
81
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   200
extent:anExtent label:aLabel icon:aForm minExtent:minExtent maxExtent:maxExtent
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   201
    ^ self origin:nil extent:anExtent
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   202
	   label:aLabel icon:aForm
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   203
	   minExtent:minExtent maxExtent:maxExtent
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   204
! !
48194c26a46c Initial revision
claus
parents:
diff changeset
   205
48194c26a46c Initial revision
claus
parents:
diff changeset
   206
!StandardSystemView methodsFor:'initialization'!
48194c26a46c Initial revision
claus
parents:
diff changeset
   207
48194c26a46c Initial revision
claus
parents:
diff changeset
   208
initialize
81
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   209
    |screenCenter|
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   210
48194c26a46c Initial revision
claus
parents:
diff changeset
   211
    super initialize.
48194c26a46c Initial revision
claus
parents:
diff changeset
   212
48194c26a46c Initial revision
claus
parents:
diff changeset
   213
    self addToCurrentProject.
48194c26a46c Initial revision
claus
parents:
diff changeset
   214
81
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   215
    screenCenter := device center.
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   216
    left := screenCenter x - (width // 2).
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   217
    top := screenCenter y - (height // 2).
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   218
    borderWidth := 2.         "- notice: many window managers ignore this"
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   219
    label := self class defaultLabel.
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   220
    minExtent := 10 @ 10.
81
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   221
    maxExtent := (device width) @ (device height).
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   222
    icon := self class defaultIcon.
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   223
    name := self class name.
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   224
!
48194c26a46c Initial revision
claus
parents:
diff changeset
   225
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   226
initEvents
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   227
    super initEvents.
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   228
    self enableFocusEvents.
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   229
!
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   230
12
9f0995fac1fa *** empty log message ***
claus
parents: 6
diff changeset
   231
defaultController
46
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   232
    "for ST-80 compatibility only - not used in ST/X"
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   233
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   234
    ^ nil "/ StandardSystemController
12
9f0995fac1fa *** empty log message ***
claus
parents: 6
diff changeset
   235
!
9f0995fac1fa *** empty log message ***
claus
parents: 6
diff changeset
   236
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   237
addToCurrentProject
46
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   238
    "add the receiver (a topview) to the current projects set-of-views.
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   239
     (If there is a current project)"
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   240
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   241
    |p|
69
04d0949dc053 *** empty log message ***
claus
parents: 54
diff changeset
   242
04d0949dc053 *** empty log message ***
claus
parents: 54
diff changeset
   243
    "
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   244
     the following check allows systems
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   245
     without projects and changeSets
69
04d0949dc053 *** empty log message ***
claus
parents: 54
diff changeset
   246
    "
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   247
    (Project notNil and:[(p := Project current) notNil]) ifTrue:[
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   248
	p addView: self
69
04d0949dc053 *** empty log message ***
claus
parents: 54
diff changeset
   249
    ]
04d0949dc053 *** empty log message ***
claus
parents: 54
diff changeset
   250
!
12
9f0995fac1fa *** empty log message ***
claus
parents: 6
diff changeset
   251
69
04d0949dc053 *** empty log message ***
claus
parents: 54
diff changeset
   252
removeFromCurrentProject
04d0949dc053 *** empty log message ***
claus
parents: 54
diff changeset
   253
    "remove the receiver (a topview) from the current projects set-of-views.
04d0949dc053 *** empty log message ***
claus
parents: 54
diff changeset
   254
     (If there is a current project)"
04d0949dc053 *** empty log message ***
claus
parents: 54
diff changeset
   255
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   256
    |p|
69
04d0949dc053 *** empty log message ***
claus
parents: 54
diff changeset
   257
04d0949dc053 *** empty log message ***
claus
parents: 54
diff changeset
   258
    "
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   259
     the following check allows systems
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   260
     without projects and changeSets
69
04d0949dc053 *** empty log message ***
claus
parents: 54
diff changeset
   261
    "
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   262
    (Project notNil and:[(p := Project current) notNil]) ifTrue:[
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   263
	p removeView:self
12
9f0995fac1fa *** empty log message ***
claus
parents: 6
diff changeset
   264
    ]
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   265
!
48194c26a46c Initial revision
claus
parents:
diff changeset
   266
24
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   267
reinitialize
46
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   268
    "reopen the receiver if if was visible before.
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   269
     This is called right after snapIn; Notice, that all instance variables
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   270
     (such as shown, realized etc.) are left-overs from the time the snapout
46
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   271
     was done. Remap the receiver, if it was mapped at snapout time"
24
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   272
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   273
    |myController|
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   274
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   275
    "if I have already been reinited - return"
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   276
    drawableId notNil ifTrue:[
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   277
	^ self
24
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   278
    ].
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   279
46
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   280
    "have to kludge with the controller 
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   281
     - otherwise its startup performs unwanted actions ..."
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   282
24
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   283
    myController := controller.
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   284
    controller := nil.
46
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   285
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   286
    "physically create the view & subviews"
24
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   287
    self recreate.
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   288
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   289
    "if I was mapped, do it again"
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   290
    realized ifTrue:[
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   291
	"if it was iconified, try to remap iconified"
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   292
	device mapView:self id:drawableId iconified:(shown not) 
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   293
		   atX:left y:top width:width height:height.
24
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   294
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   295
	"and restart the window-group process"
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   296
	windowGroup notNil ifTrue:[
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   297
	    windowGroup restart
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   298
	]
24
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   299
    ].
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   300
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   301
    "restore controller"
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   302
    controller := myController
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   303
!
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   304
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   305
recreate
48194c26a46c Initial revision
claus
parents:
diff changeset
   306
    "recreate the view after a snap-in"
48194c26a46c Initial revision
claus
parents:
diff changeset
   307
24
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   308
    icon := self convertedIcon.
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   309
    super recreate.
46
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   310
24
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   311
    iconView notNil ifTrue:[
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   312
	iconView create.
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   313
	device setWindowIconWindow:iconView in:drawableId
24
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   314
    ] ifFalse:[
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   315
	(icon notNil and:[icon id notNil]) ifTrue:[
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   316
	    device setWindowIcon:icon in:drawableId
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   317
	].
12
9f0995fac1fa *** empty log message ***
claus
parents: 6
diff changeset
   318
    ].
24
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   319
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   320
    iconLabel notNil ifTrue:[
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   321
	device setIconName:iconLabel in:drawableId
12
9f0995fac1fa *** empty log message ***
claus
parents: 6
diff changeset
   322
    ]
9f0995fac1fa *** empty log message ***
claus
parents: 6
diff changeset
   323
!
9f0995fac1fa *** empty log message ***
claus
parents: 6
diff changeset
   324
9f0995fac1fa *** empty log message ***
claus
parents: 6
diff changeset
   325
reAdjustGeometry
9f0995fac1fa *** empty log message ***
claus
parents: 6
diff changeset
   326
    "when we come up on a smaller display, 
9f0995fac1fa *** empty log message ***
claus
parents: 6
diff changeset
   327
     make certain, that the receiver is visible"
9f0995fac1fa *** empty log message ***
claus
parents: 6
diff changeset
   328
9f0995fac1fa *** empty log message ***
claus
parents: 6
diff changeset
   329
    |dX dY|
9f0995fac1fa *** empty log message ***
claus
parents: 6
diff changeset
   330
9f0995fac1fa *** empty log message ***
claus
parents: 6
diff changeset
   331
    dX := (device horizontalPixelPerMillimeter * 20) rounded.
9f0995fac1fa *** empty log message ***
claus
parents: 6
diff changeset
   332
    dY := (device verticalPixelPerMillimeter * 20) rounded.
9f0995fac1fa *** empty log message ***
claus
parents: 6
diff changeset
   333
9f0995fac1fa *** empty log message ***
claus
parents: 6
diff changeset
   334
    ((self left > (device width - dX)) or:[
9f0995fac1fa *** empty log message ***
claus
parents: 6
diff changeset
   335
      self top > (device height - dY)]) ifTrue:[
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   336
	'moving view into visible area' errorPrintNewline.
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   337
	self origin:(device width - dX) @ (device height - dY)
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   338
    ]
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   339
!
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   340
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   341
realize
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   342
    super realize.
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   343
    windowGroup notNil ifTrue:[
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   344
	windowGroup focusSequence:(self focusSequence)
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   345
    ]
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   346
!
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   347
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   348
focusSequence
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   349
    "return a sequence which defines the order in which the focus
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   350
     is passed for FocusNext and FocusPrevious keys.
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   351
     All views which like to support these keys should redefine
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   352
     this method and return a collection of (sub-) views"
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   353
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   354
    ^ nil
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   355
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   356
! !
48194c26a46c Initial revision
claus
parents:
diff changeset
   357
48194c26a46c Initial revision
claus
parents:
diff changeset
   358
!StandardSystemView methodsFor:'destroying'!
48194c26a46c Initial revision
claus
parents:
diff changeset
   359
48194c26a46c Initial revision
claus
parents:
diff changeset
   360
destroy
48194c26a46c Initial revision
claus
parents:
diff changeset
   361
    super destroy.
69
04d0949dc053 *** empty log message ***
claus
parents: 54
diff changeset
   362
    self removeFromCurrentProject
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   363
! !
48194c26a46c Initial revision
claus
parents:
diff changeset
   364
24
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   365
!StandardSystemView methodsFor:'private'!
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   366
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   367
convertedIcon
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   368
    "make certain, that the icon is a b&w bitmap;
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   369
     do so by converting if required.
24
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   370
     Will add a device supportsDeepIcons and only convert when needed;
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   371
     for now, we always have to convert (since there are only Xdisplays)."
24
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   372
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   373
    |deviceIcon|
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   374
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   375
    icon isNil ifTrue:[^ nil].
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   376
81
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   377
    device supportsDeepIcons ifFalse:[
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   378
	icon depth ~~ 1 ifTrue:[
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   379
	    "
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   380
	     dither to monochrome
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   381
	    "
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   382
	    deviceIcon := icon asMonochromeFormOn:device.
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   383
	] ifFalse:[
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   384
	    deviceIcon := icon
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   385
	]
24
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   386
    ].
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   387
    deviceIcon notNil ifTrue:[
81
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   388
	"
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   389
	 get device pixmap (i.e. allocate colors & resource)
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   390
	"
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   391
	deviceIcon := deviceIcon on:device
24
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   392
    ].
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   393
    ^ deviceIcon
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   394
! !
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   395
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   396
!StandardSystemView methodsFor:'realization'!
48194c26a46c Initial revision
claus
parents:
diff changeset
   397
46
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   398
physicalCreate
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   399
    "common code for create & recreate"
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   400
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   401
    drawableId := device 
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   402
		      createWindowFor:self 
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   403
		      origin:(left @ top)
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   404
		      extent:(width @ height)
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   405
		      minExtent:minExtent
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   406
		      maxExtent:maxExtent
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   407
		      borderWidth:borderWidth
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   408
		      subViewOf:nil 
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   409
		      onTop:(self createOnTop)
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   410
		      inputOnly:(self inputOnly)
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   411
		      label:label
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   412
		      cursor:cursor
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   413
		      icon:icon
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   414
		      iconView:iconView.
46
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   415
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   416
    extentChanged := false.
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   417
    originChanged := false.
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   418
81
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   419
    (borderColor notNil and:[borderColor ~~ Black]) ifTrue:[
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   420
	borderColor := borderColor on:device.
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   421
	self setBorderColor
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   422
    ].
81
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   423
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   424
"/  (viewGravity notNil "and:[viewGravity ~~ #NorthWest]") ifTrue:[
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   425
"/        device setWindowGravity:viewGravity in:drawableId
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   426
"/  ].
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   427
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   428
"/  (bitGravity notNil "and:[bitGravity ~~ #NorthWest]") ifTrue:[
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   429
"/      device setBitGravity:bitGravity in:drawableId
4ba554473294 *** empty log message ***
claus
parents: 78
diff changeset
   430
"/  ].
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   431
46
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   432
    borderShape notNil ifTrue:[
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   433
	device setWindowBorderShape:(borderShape id) in:drawableId
46
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   434
    ].
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   435
    viewShape notNil ifTrue:[
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   436
	device setWindowShape:(viewShape id) in:drawableId
46
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   437
    ].
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   438
    (backed notNil and:[backed ~~ false]) ifTrue:[
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   439
	device setBackingStore:backed in:drawableId
46
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   440
    ].
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   441
    saveUnder ifTrue:[
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   442
	device setSaveUnder:true in:drawableId
46
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   443
    ].
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   444
!
7b331e9012fd *** empty log message ***
claus
parents: 24
diff changeset
   445
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   446
create
48194c26a46c Initial revision
claus
parents:
diff changeset
   447
    "create - make certain that icon is available"
48194c26a46c Initial revision
claus
parents:
diff changeset
   448
24
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   449
    icon := self convertedIcon.
2
b35336ab0de3 *** empty log message ***
claus
parents: 0
diff changeset
   450
    super create.
12
9f0995fac1fa *** empty log message ***
claus
parents: 6
diff changeset
   451
2
b35336ab0de3 *** empty log message ***
claus
parents: 0
diff changeset
   452
    iconView notNil ifTrue:[
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   453
	iconView create.
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   454
	device setWindowIconWindow:iconView in:drawableId
24
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   455
    ].
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   456
    iconLabel notNil ifTrue:[
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   457
	device setIconName:iconLabel in:drawableId
2
b35336ab0de3 *** empty log message ***
claus
parents: 0
diff changeset
   458
    ]
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   459
!
48194c26a46c Initial revision
claus
parents:
diff changeset
   460
48194c26a46c Initial revision
claus
parents:
diff changeset
   461
openWithExtent:anExtent
48194c26a46c Initial revision
claus
parents:
diff changeset
   462
    "set extent and open - for ST-80 compatibility"
48194c26a46c Initial revision
claus
parents:
diff changeset
   463
48194c26a46c Initial revision
claus
parents:
diff changeset
   464
    self extent:anExtent.
48194c26a46c Initial revision
claus
parents:
diff changeset
   465
    self open
48194c26a46c Initial revision
claus
parents:
diff changeset
   466
! !
48194c26a46c Initial revision
claus
parents:
diff changeset
   467
69
04d0949dc053 *** empty log message ***
claus
parents: 54
diff changeset
   468
!StandardSystemView methodsFor:'misc'!
04d0949dc053 *** empty log message ***
claus
parents: 54
diff changeset
   469
04d0949dc053 *** empty log message ***
claus
parents: 54
diff changeset
   470
withWaitCursorDo:aBlock
04d0949dc053 *** empty log message ***
claus
parents: 54
diff changeset
   471
    "evaluate aBlock while showing a waitCursor in all my views"
04d0949dc053 *** empty log message ***
claus
parents: 54
diff changeset
   472
04d0949dc053 *** empty log message ***
claus
parents: 54
diff changeset
   473
    self withCursor:(Cursor wait) do:aBlock
04d0949dc053 *** empty log message ***
claus
parents: 54
diff changeset
   474
!
04d0949dc053 *** empty log message ***
claus
parents: 54
diff changeset
   475
04d0949dc053 *** empty log message ***
claus
parents: 54
diff changeset
   476
withCursor:aCursor do:aBlock
04d0949dc053 *** empty log message ***
claus
parents: 54
diff changeset
   477
    "evaluate aBlock while showing aCursor in all my views"
04d0949dc053 *** empty log message ***
claus
parents: 54
diff changeset
   478
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   479
    windowGroup notNil ifTrue:[
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   480
	windowGroup withCursor:aCursor do:aBlock
78
1c9c22df3251 *** empty log message ***
claus
parents: 72
diff changeset
   481
    ] ifFalse:[
1c9c22df3251 *** empty log message ***
claus
parents: 72
diff changeset
   482
	super withCursor:aCursor do:aBlock
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   483
    ]
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   484
! !
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   485
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   486
!StandardSystemView methodsFor:'printing & storing'!
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   487
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   488
displayString
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   489
    "just for your convenience in inspectors ..."
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   490
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   491
    |s|
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   492
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   493
    s := super displayString.
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   494
    label isNil ifTrue:[
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   495
	s := s , '(' , label , ')'
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   496
    ].
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   497
    ^ s
69
04d0949dc053 *** empty log message ***
claus
parents: 54
diff changeset
   498
! !
04d0949dc053 *** empty log message ***
claus
parents: 54
diff changeset
   499
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   500
!StandardSystemView methodsFor:'accessing'!
48194c26a46c Initial revision
claus
parents:
diff changeset
   501
82
98a70bce6d51 *** empty log message ***
claus
parents: 81
diff changeset
   502
preferedExtent
98a70bce6d51 *** empty log message ***
claus
parents: 81
diff changeset
   503
    "return my preferred extent - this is the minimum size I would like to have.
98a70bce6d51 *** empty log message ***
claus
parents: 81
diff changeset
   504
     The default here is the classes default extent."
98a70bce6d51 *** empty log message ***
claus
parents: 81
diff changeset
   505
98a70bce6d51 *** empty log message ***
claus
parents: 81
diff changeset
   506
    ^ self class defaultExtent
98a70bce6d51 *** empty log message ***
claus
parents: 81
diff changeset
   507
!
98a70bce6d51 *** empty log message ***
claus
parents: 81
diff changeset
   508
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   509
heightIncludingBorder
48194c26a46c Initial revision
claus
parents:
diff changeset
   510
    "return the views overall-height"
48194c26a46c Initial revision
claus
parents:
diff changeset
   511
48194c26a46c Initial revision
claus
parents:
diff changeset
   512
    ^ height
48194c26a46c Initial revision
claus
parents:
diff changeset
   513
!
48194c26a46c Initial revision
claus
parents:
diff changeset
   514
48194c26a46c Initial revision
claus
parents:
diff changeset
   515
widthIncludingBorder
48194c26a46c Initial revision
claus
parents:
diff changeset
   516
    "return the views overall-width"
48194c26a46c Initial revision
claus
parents:
diff changeset
   517
48194c26a46c Initial revision
claus
parents:
diff changeset
   518
    ^ width
48194c26a46c Initial revision
claus
parents:
diff changeset
   519
!
48194c26a46c Initial revision
claus
parents:
diff changeset
   520
48194c26a46c Initial revision
claus
parents:
diff changeset
   521
label
48194c26a46c Initial revision
claus
parents:
diff changeset
   522
    "return the views name in the title area"
48194c26a46c Initial revision
claus
parents:
diff changeset
   523
48194c26a46c Initial revision
claus
parents:
diff changeset
   524
    ^ label
48194c26a46c Initial revision
claus
parents:
diff changeset
   525
!
48194c26a46c Initial revision
claus
parents:
diff changeset
   526
48194c26a46c Initial revision
claus
parents:
diff changeset
   527
label:aString
48194c26a46c Initial revision
claus
parents:
diff changeset
   528
    "define the views name in the windows title area"
48194c26a46c Initial revision
claus
parents:
diff changeset
   529
48194c26a46c Initial revision
claus
parents:
diff changeset
   530
    label := aString.
48194c26a46c Initial revision
claus
parents:
diff changeset
   531
    drawableId notNil ifTrue: [
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   532
	device setWindowName:aString in:drawableId.
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   533
	"
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   534
	 unbuffered - to make it visible right NOW
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   535
	"
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   536
	device synchronizeOutput.
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   537
    ]
48194c26a46c Initial revision
claus
parents:
diff changeset
   538
!
48194c26a46c Initial revision
claus
parents:
diff changeset
   539
24
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   540
iconLabel
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   541
    "return the name displayed in the icon"
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   542
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   543
    ^ iconLabel
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   544
!
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   545
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   546
iconLabel:aString
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   547
    "define the name to be displayed in the icon"
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   548
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   549
    iconLabel := aString.
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   550
    drawableId notNil ifTrue:[
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   551
	device setIconName:aString in:drawableId.
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   552
	"
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   553
	 unbuffered - to make it visible right NOW
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   554
	"
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   555
	device synchronizeOutput.
24
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   556
    ]
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   557
!
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   558
12
9f0995fac1fa *** empty log message ***
claus
parents: 6
diff changeset
   559
name
24
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   560
    "return the topViews label"
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   561
12
9f0995fac1fa *** empty log message ***
claus
parents: 6
diff changeset
   562
    ^ label
9f0995fac1fa *** empty log message ***
claus
parents: 6
diff changeset
   563
!
9f0995fac1fa *** empty log message ***
claus
parents: 6
diff changeset
   564
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   565
icon
48194c26a46c Initial revision
claus
parents:
diff changeset
   566
    "return the form defined as icon"
48194c26a46c Initial revision
claus
parents:
diff changeset
   567
48194c26a46c Initial revision
claus
parents:
diff changeset
   568
    ^ icon
48194c26a46c Initial revision
claus
parents:
diff changeset
   569
!
48194c26a46c Initial revision
claus
parents:
diff changeset
   570
48194c26a46c Initial revision
claus
parents:
diff changeset
   571
icon:aForm
48194c26a46c Initial revision
claus
parents:
diff changeset
   572
    "define the form (bitmap) used as icon"
48194c26a46c Initial revision
claus
parents:
diff changeset
   573
24
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   574
    |invertedIcon i|
12
9f0995fac1fa *** empty log message ***
claus
parents: 6
diff changeset
   575
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   576
    icon := aForm.
12
9f0995fac1fa *** empty log message ***
claus
parents: 6
diff changeset
   577
    icon notNil ifTrue:[
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   578
	drawableId notNil ifTrue:[
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   579
	    icon depth ~~ 1 ifTrue:[
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   580
		icon := icon asMonochromeFormOn:device.
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   581
	    ].
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   582
	    "icons assume 1s as black - invert icon if the device thinks different"
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   583
	    (device depth == 1 and:[device whitepixel ~~ 0]) ifTrue:[
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   584
		i := icon on:device.
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   585
		i notNil ifTrue:[
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   586
		    invertedIcon := Form width:icon width height:icon height on:device.
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   587
		    invertedIcon function:#copy.
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   588
		    invertedIcon foreground:Color noColor background:Color allColor.
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   589
		    invertedIcon copyFrom:i x:0 y:0 toX:0 y:0 width:icon width height:icon height.
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   590
		    i := invertedIcon.
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   591
		]
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   592
	    ] ifFalse:[
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   593
		i := icon on:device.
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   594
	    ].
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   595
	    (i notNil and:[i id notNil]) ifTrue:[
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   596
		device setWindowIcon:i in:drawableId
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   597
	    ]
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   598
	]
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   599
    ]
48194c26a46c Initial revision
claus
parents:
diff changeset
   600
!
48194c26a46c Initial revision
claus
parents:
diff changeset
   601
48194c26a46c Initial revision
claus
parents:
diff changeset
   602
iconView
48194c26a46c Initial revision
claus
parents:
diff changeset
   603
    "return the view used as icon-view"
48194c26a46c Initial revision
claus
parents:
diff changeset
   604
48194c26a46c Initial revision
claus
parents:
diff changeset
   605
    ^ iconView
48194c26a46c Initial revision
claus
parents:
diff changeset
   606
!
48194c26a46c Initial revision
claus
parents:
diff changeset
   607
48194c26a46c Initial revision
claus
parents:
diff changeset
   608
iconView:aView
48194c26a46c Initial revision
claus
parents:
diff changeset
   609
    "specify the view to be used as icon"
48194c26a46c Initial revision
claus
parents:
diff changeset
   610
48194c26a46c Initial revision
claus
parents:
diff changeset
   611
    iconView := aView.
48194c26a46c Initial revision
claus
parents:
diff changeset
   612
    drawableId notNil ifTrue:[
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   613
	aView create.
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   614
	device setWindowIconWindow:aView in:drawableId
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   615
    ]
48194c26a46c Initial revision
claus
parents:
diff changeset
   616
!
48194c26a46c Initial revision
claus
parents:
diff changeset
   617
48194c26a46c Initial revision
claus
parents:
diff changeset
   618
iconName:aString
24
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   619
    "this method will vanish soon ... - for backward compatibility"
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   620
24
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   621
    self iconLabel:aString
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   622
!
48194c26a46c Initial revision
claus
parents:
diff changeset
   623
48194c26a46c Initial revision
claus
parents:
diff changeset
   624
maximumSize:anExtent
24
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   625
    "same as maxExtent: for ST-80 compatibility"
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   626
48194c26a46c Initial revision
claus
parents:
diff changeset
   627
    ^ self maxExtent:anExtent
48194c26a46c Initial revision
claus
parents:
diff changeset
   628
!
48194c26a46c Initial revision
claus
parents:
diff changeset
   629
48194c26a46c Initial revision
claus
parents:
diff changeset
   630
minimumSize:anExtent
24
e810b1be068b *** empty log message ***
claus
parents: 21
diff changeset
   631
    "same as minExtent: for ST-80 compatibility"
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   632
48194c26a46c Initial revision
claus
parents:
diff changeset
   633
    ^ self minExtent:anExtent
48194c26a46c Initial revision
claus
parents:
diff changeset
   634
!
48194c26a46c Initial revision
claus
parents:
diff changeset
   635
48194c26a46c Initial revision
claus
parents:
diff changeset
   636
minExtent
48194c26a46c Initial revision
claus
parents:
diff changeset
   637
    "return the views minimum allowed extent"
48194c26a46c Initial revision
claus
parents:
diff changeset
   638
48194c26a46c Initial revision
claus
parents:
diff changeset
   639
    ^ minExtent
48194c26a46c Initial revision
claus
parents:
diff changeset
   640
!
48194c26a46c Initial revision
claus
parents:
diff changeset
   641
48194c26a46c Initial revision
claus
parents:
diff changeset
   642
minExtent:min
48194c26a46c Initial revision
claus
parents:
diff changeset
   643
    "define the minimum extent the view may have -
48194c26a46c Initial revision
claus
parents:
diff changeset
   644
     depends on good-will of window manager"
48194c26a46c Initial revision
claus
parents:
diff changeset
   645
48194c26a46c Initial revision
claus
parents:
diff changeset
   646
    minExtent := min.
48194c26a46c Initial revision
claus
parents:
diff changeset
   647
    (width notNil and:[height notNil]) ifTrue:[
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   648
	((width < (minExtent x)) or:
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   649
	 [height < (minExtent y)]) ifTrue: [
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   650
	    self extent:minExtent
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   651
	]
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   652
    ]
48194c26a46c Initial revision
claus
parents:
diff changeset
   653
!
48194c26a46c Initial revision
claus
parents:
diff changeset
   654
48194c26a46c Initial revision
claus
parents:
diff changeset
   655
maxExtent
48194c26a46c Initial revision
claus
parents:
diff changeset
   656
    "return the views maximum allowed extent"
48194c26a46c Initial revision
claus
parents:
diff changeset
   657
48194c26a46c Initial revision
claus
parents:
diff changeset
   658
    ^ maxExtent
48194c26a46c Initial revision
claus
parents:
diff changeset
   659
!
48194c26a46c Initial revision
claus
parents:
diff changeset
   660
48194c26a46c Initial revision
claus
parents:
diff changeset
   661
maxExtent:max
48194c26a46c Initial revision
claus
parents:
diff changeset
   662
    "define the maximum extent the view may have -
48194c26a46c Initial revision
claus
parents:
diff changeset
   663
     depends on good-will of window manager"
48194c26a46c Initial revision
claus
parents:
diff changeset
   664
48194c26a46c Initial revision
claus
parents:
diff changeset
   665
    maxExtent := max.
48194c26a46c Initial revision
claus
parents:
diff changeset
   666
    (width notNil and:[height notNil]) ifTrue:[
72
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   667
	((width > (maxExtent x)) or:
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   668
	 [height > (maxExtent y)]) ifTrue: [
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   669
	    self extent:maxExtent
3e84121988c3 *** empty log message ***
claus
parents: 69
diff changeset
   670
	]
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   671
    ]
48194c26a46c Initial revision
claus
parents:
diff changeset
   672
! !
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   673
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   674
!StandardSystemView methodsFor:'event handling'!
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   675
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   676
focusOut
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   677
    "the view lost keyboard focus"
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   678
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   679
    |v|
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   680
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   681
    windowGroup notNil ifTrue:[
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   682
	(v := windowGroup focusView) notNil ifTrue:[
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   683
	    v showNoFocus
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   684
	]
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   685
    ].
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   686
!
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   687
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   688
focusIn
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   689
    "the view got the keyboard focus"
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   690
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   691
    |v|
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   692
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   693
    windowGroup notNil ifTrue:[
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   694
	(v := windowGroup focusView) notNil ifTrue:[
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   695
	    v showFocus
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   696
	]
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   697
    ].
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   698
!
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   699
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   700
mapped
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   701
    "the view got mapped"
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   702
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   703
    super mapped.
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   704
    "
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   705
     ask for the focus - this avoids having to click on the
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   706
     view with WM's which need an explicit click.
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   707
     Q: is this a good idea ?
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   708
    "
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   709
    TakeFocusWhenMapped == true ifTrue:[
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   710
	self getKeyboardFocus.
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   711
    ]
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   712
! !
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   713