InfoBox.st
author claus
Mon, 20 Mar 1995 12:49:23 +0100
changeset 108 0acd243c622a
parent 97 cbf495fe3b64
child 110 eb59f6e31e84
permissions -rw-r--r--
*** empty log message ***
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
     1
"
5
claus
parents: 3
diff changeset
     2
 COPYRIGHT (c) 1989 by Claus Gittinger
59
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
     3
	      All Rights Reserved
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
     4
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
     5
 This software is furnished under a license and may be used
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
     6
 only in accordance with the terms of that license and with the
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
     8
 be provided or otherwise made available to, or used by, any
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
     9
 other person.  No title to or ownership of the software is
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
    10
 hereby transferred.
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
    11
"
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
    12
77
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    13
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    14
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    15
'From Smalltalk/X, Version:2.10.4 on 28-dec-1994 at 1:57:21 pm'!
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    16
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    17
DialogBox subclass:#InfoBox
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    18
	 instanceVariableNames:'formLabel textLabel'
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    19
	 classVariableNames:'InfoBitmap'
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    20
	 poolDictionaries:''
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    21
	 category:'Views-DialogBoxes'
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
    22
!
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
    23
77
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    24
!InfoBox class methodsFor:'documentation'!
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
    25
77
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    26
version
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    27
"
108
0acd243c622a *** empty log message ***
claus
parents: 97
diff changeset
    28
$Header: /cvs/stx/stx/libwidg/InfoBox.st,v 1.13 1995-03-20 11:49:23 claus Exp $
77
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    29
"
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    30
!
8
82e87dc3540e *** empty log message ***
claus
parents: 7
diff changeset
    31
82e87dc3540e *** empty log message ***
claus
parents: 7
diff changeset
    32
documentation
82e87dc3540e *** empty log message ***
claus
parents: 7
diff changeset
    33
"
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 8
diff changeset
    34
    this class implements a pop-up box to show an information message.
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 8
diff changeset
    35
    It has a single ok-Button, which closes the box.
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 8
diff changeset
    36
    Also entering return has (by default) the same effect as pressing
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 8
diff changeset
    37
    the ok-button.
59
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
    38
    InfoBox is a superclass of some other boxes - see WarningBox, YesNoBox etc.
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
    39
    most of them simply redefine the icon shown in the upper left or
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
    40
    add buttons.
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
    41
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
    42
    instance variables:
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
    43
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
    44
	formLabel        <Label>        shows a bitmap (warning, question-mark)
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
    45
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
    46
	textLabel        <Label>        shows the boxes text
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
    47
77
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    48
"
59
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
    49
77
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    50
!
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 8
diff changeset
    51
77
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    52
examples
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    53
"
59
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
    54
    InfoBoxes are created with:
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
    55
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
    56
	aBox := InfoBox title:'some title'.
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 8
diff changeset
    57
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 8
diff changeset
    58
    and shown with:
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 8
diff changeset
    59
59
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
    60
	aBox showAtPointer
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
    61
    or
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
    62
	aBox open
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 8
diff changeset
    63
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 8
diff changeset
    64
    The default box shows 'yes' in its button; this can be changed with:
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 8
diff changeset
    65
59
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
    66
	aBox okText:'some string'.
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 8
diff changeset
    67
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 8
diff changeset
    68
    the boxes bitmap-image can be changed with:
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 8
diff changeset
    69
59
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
    70
	aBox form:aForm
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 8
diff changeset
    71
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 8
diff changeset
    72
    (the name 'form:' is historical - any bitmap or image is allowed).
77
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    73
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    74
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    75
    Since this type of information is pretty common, a convenient information
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    76
    method has been added to Object.
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    77
    Thus, you can use:
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    78
	self information:'hello world'
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    79
    everwhere in your program.
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    80
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    81
    standard box:
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    82
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    83
	|box|
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    84
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    85
	box := InfoBox title:'hello world '.
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    86
	box open
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    87
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    88
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    89
    changing the buttons label:
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    90
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    91
	|box|
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    92
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    93
	box := InfoBox title:'hello world '.
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    94
	box okText:'wow'.
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    95
	box open
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    96
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    97
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    98
    changing the icon:
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
    99
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   100
	|box|
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   101
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   102
	box := InfoBox title:'hello world '.
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   103
	box form:(Image fromFile:'bitmaps/SBrowser.xbm').
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   104
	box okText:'wow'.
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   105
	box open
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   106
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   107
    or even:
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   108
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   109
	|box|
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   110
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   111
	box := InfoBox title:'hello garfield '.
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   112
	box form:((Image fromFile:'bitmaps/garfield.gif') magnifyTo:200@100).
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   113
	box okText:'wow'.
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   114
	box open
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   115
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   116
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   117
    If you plan to use boxes as in the last example, you may want to
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   118
    keep the box around for reuse (since the image magnification takes some time).
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   119
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   120
	|box|
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   121
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   122
	box := InfoBox title:'hello garfield '.
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   123
	box form:((Image fromFile:'bitmaps/garfield.gif') magnifyTo:200@100).
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   124
	box okText:'wow'.
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   125
	box open.
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   126
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   127
	box title:'hello again'.
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   128
	box open
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   129
63
f4eaf04d1eaf *** empty log message ***
claus
parents: 60
diff changeset
   130
"
f4eaf04d1eaf *** empty log message ***
claus
parents: 60
diff changeset
   131
!
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 8
diff changeset
   132
77
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   133
copyright
63
f4eaf04d1eaf *** empty log message ***
claus
parents: 60
diff changeset
   134
"
77
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   135
 COPYRIGHT (c) 1989 by Claus Gittinger
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   136
	      All Rights Reserved
59
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
   137
77
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   138
 This software is furnished under a license and may be used
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   139
 only in accordance with the terms of that license and with the
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   140
 inclusion of the above copyright notice.   This software may not
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   141
 be provided or otherwise made available to, or used by, any
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   142
 other person.  No title to or ownership of the software is
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   143
 hereby transferred.
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   144
"
59
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
   145
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 8
diff changeset
   146
77
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   147
! !
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   148
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   149
!InfoBox class methodsFor:'instance creation'!
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 8
diff changeset
   150
77
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   151
title:titleString
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   152
    "create a new infoBox with title, aTitleString"
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   153
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   154
    ^ (self new) title:titleString
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 8
diff changeset
   155
77
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   156
    "
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   157
     (InfoBox title:'hello') open
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   158
    "
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   159
! !
60
f3c738c24ce6 mostly style
claus
parents: 59
diff changeset
   160
77
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   161
!InfoBox class methodsFor:'defaults'!
60
f3c738c24ce6 mostly style
claus
parents: 59
diff changeset
   162
77
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   163
iconBitmap
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   164
    "return the bitmap shown as icon in my instances.
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   165
     The form is cached and reused, for faster opening."
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 8
diff changeset
   166
77
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   167
    InfoBitmap isNil ifTrue:[
108
0acd243c622a *** empty log message ***
claus
parents: 97
diff changeset
   168
	InfoBitmap := Image fromFile:'bitmaps/Information.xbm'. 
0acd243c622a *** empty log message ***
claus
parents: 97
diff changeset
   169
	InfoBitmap notNil ifTrue:[
0acd243c622a *** empty log message ***
claus
parents: 97
diff changeset
   170
	    InfoBitmap := InfoBitmap on:Display 
0acd243c622a *** empty log message ***
claus
parents: 97
diff changeset
   171
	]
77
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   172
    ].
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   173
    ^ InfoBitmap
59
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
   174
! !
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
   175
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
   176
!InfoBox class methodsFor:'styles'!
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
   177
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
   178
updateStyleCache
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
   179
    |img|
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 8
diff changeset
   180
59
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
   181
    img := StyleSheet at:'informationBoxIcon'.
72
730e270a37e6 last version before using new DialogBox
claus
parents: 63
diff changeset
   182
    img notNil ifTrue:[InfoBitmap := img on:Display].
59
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
   183
! !
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
   184
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   185
!InfoBox methodsFor:'accessing'!
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   186
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   187
form:aForm
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   188
    "define a form to be displayed left of the title
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   189
     - usually an exclamation-mark"
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   190
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   191
    formLabel form:aForm.
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   192
    formLabel resize.
97
cbf495fe3b64 *** empty log message ***
claus
parents: 77
diff changeset
   193
    shown ifTrue:[self resize]
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   194
!
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   195
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 8
diff changeset
   196
formLabel
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 8
diff changeset
   197
    "return the formLabel = can be used to change its appearance"
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 8
diff changeset
   198
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 8
diff changeset
   199
    ^ formLabel
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 8
diff changeset
   200
!
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 8
diff changeset
   201
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   202
title:aString
8
82e87dc3540e *** empty log message ***
claus
parents: 7
diff changeset
   203
    "set the boxes title string"
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   204
8
82e87dc3540e *** empty log message ***
claus
parents: 7
diff changeset
   205
    aString ~= textLabel label ifTrue:[
59
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
   206
	textLabel label:aString.
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
   207
	textLabel resize.
97
cbf495fe3b64 *** empty log message ***
claus
parents: 77
diff changeset
   208
	shown ifTrue:[self resize]
8
82e87dc3540e *** empty log message ***
claus
parents: 7
diff changeset
   209
    ]
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   210
!
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   211
77
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   212
textLabel
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   213
    "return the textLabel = can be used to change its appearance"
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   214
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   215
    ^ textLabel
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   216
!
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   217
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   218
title
8
82e87dc3540e *** empty log message ***
claus
parents: 7
diff changeset
   219
    "return the boxes title string"
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   220
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   221
    ^ textLabel label
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   222
! !
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   223
63
f4eaf04d1eaf *** empty log message ***
claus
parents: 60
diff changeset
   224
!InfoBox methodsFor:'queries'!
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   225
59
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
   226
preferedExtent 
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
   227
    "return my prefered extent"
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
   228
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
   229
    |w h extra|
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
   230
60
f3c738c24ce6 mostly style
claus
parents: 59
diff changeset
   231
    formLabel resize.
f3c738c24ce6 mostly style
claus
parents: 59
diff changeset
   232
    textLabel resize.
f3c738c24ce6 mostly style
claus
parents: 59
diff changeset
   233
f3c738c24ce6 mostly style
claus
parents: 59
diff changeset
   234
    w := margin + 
f3c738c24ce6 mostly style
claus
parents: 59
diff changeset
   235
	 ViewSpacing + 
f3c738c24ce6 mostly style
claus
parents: 59
diff changeset
   236
	 formLabel widthIncludingBorder + 
f3c738c24ce6 mostly style
claus
parents: 59
diff changeset
   237
	 ViewSpacing + textLabel width + ViewSpacing +
f3c738c24ce6 mostly style
claus
parents: 59
diff changeset
   238
	 margin.
59
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
   239
    w := w max:(okButton preferedExtent x + (ViewSpacing * 2)).
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
   240
    h := ViewSpacing
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
   241
	 + ((formLabel heightIncludingBorder) max:(textLabel height))
60
f3c738c24ce6 mostly style
claus
parents: 59
diff changeset
   242
	 + ViewSpacing + ViewSpacing + ViewSpacing + ViewSpacing
59
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
   243
	 + okButton heightIncludingBorder
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
   244
	 + ViewSpacing.
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
   245
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
   246
    extra := 0 "margin * 2".
450ce95a72a4 *** empty log message ***
claus
parents: 38
diff changeset
   247
    ^ (w + extra) @ (h + extra)
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   248
! !
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   249
77
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   250
!InfoBox methodsFor:'initialization'!
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   251
77
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   252
initFormBitmap
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   253
    "setup the bitmap shown in the upper left -
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   254
     extracted into a separate method for easier redefinition
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   255
     in subclasses"
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   256
77
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   257
    formLabel form:(self class iconBitmap)
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   258
!
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   259
77
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   260
initialize
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   261
    |mm|
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   262
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   263
    super initialize.
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   264
    self addOkButton.
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   265
77
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   266
    label := 'Info'.
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   267
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   268
    mm := ViewSpacing.
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   269
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   270
    formLabel := Label in:self.
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   271
    self initFormBitmap.
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   272
    formLabel borderWidth:0.
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   273
    formLabel origin:(mm @ mm).
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   274
77
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   275
    textLabel := Label label:'Information' in:self.
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   276
    textLabel borderWidth:0.
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   277
    textLabel origin:[(mm + formLabel widthIncludingBorder + mm) 
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   278
		      @ 
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   279
		      mm].
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   280
77
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   281
    "
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   282
     |b|
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   283
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   284
     b := InfoBox new.
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   285
     b title:'hello'.
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   286
     b open
565b052f5277 *** empty log message ***
claus
parents: 72
diff changeset
   287
    "
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   288
! !