VariablePanel.st
author Stefan Vogel <sv@exept.de>
Wed, 16 May 2018 08:37:31 +0200
changeset 6320 d52325b32f05
parent 6240 7b9e4c7a90e0
child 6334 679bee283b70
permissions -rw-r--r--
#REFACTORING by stefan class: DialogBox class changed: #initialize #modifyingBoxWith:do: fix return value
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
"
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     2
 COPYRIGHT (c) 1991 by Claus Gittinger
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
	      All Rights Reserved
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     5
 This software is furnished under a license and may be used
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     6
 only in accordance with the terms of that license and with the
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     8
 be provided or otherwise made available to, or used by, any
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     9
 other person.  No title to or ownership of the software is
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    10
 hereby transferred.
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    11
"
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
    12
"{ Package: 'stx:libwidg' }"
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
    13
5261
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
    14
"{ NameSpace: Smalltalk }"
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
    15
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    16
SimpleView subclass:#VariablePanel
2623
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
    17
	instanceVariableNames:'barHeight barWidth barLevel separatingLine shadowForm lightForm
4206
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
    18
		showHandle showHandleWhenEntered handlePosition handleColor
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
    19
		handleStyle handleLevel noColor trackLine redrawLocked
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
    20
		orientation handleLabels knobHeight realRelativeSizes
5471
dadc66355380 #BUGFIX
Stefan Vogel <sv@exept.de>
parents: 5465
diff changeset
    21
		snapAdornment'
395
db172e0f3d56 renamed #style: to #handleStyle:
Claus Gittinger <cg@exept.de>
parents: 300
diff changeset
    22
	classVariableNames:'DefaultShowHandle DefaultHandleStyle DefaultHandlePosition
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    23
		DefaultTrackingLine DefaultSeparatingLine DefaultHandleColor
1529
509edab0a08b allow handleImage to be specified in styleSheet
Claus Gittinger <cg@exept.de>
parents: 1416
diff changeset
    24
		DefaultHandleLevel DefaultVCursor DefaultHCursor
4206
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
    25
		DefaultHandleImage DefaultSnapIcons DefaultSnapHandlePosition
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
    26
		DefaultShowHandleWhenEntered'
395
db172e0f3d56 renamed #style: to #handleStyle:
Claus Gittinger <cg@exept.de>
parents: 300
diff changeset
    27
	poolDictionaries:''
db172e0f3d56 renamed #style: to #handleStyle:
Claus Gittinger <cg@exept.de>
parents: 300
diff changeset
    28
	category:'Views-Layout'
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
!
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
    31
Object subclass:#SnapAdornment
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
    32
	instanceVariableNames:'level mode selectedLevel enterLevel selectedBgColor enterBgColor
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
    33
		iconLeftRight iconUpDown iconLeft iconRight iconUp iconDown width
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
    34
		height'
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
    35
	classVariableNames:''
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
    36
	poolDictionaries:''
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
    37
	privateIn:VariablePanel
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
    38
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
    39
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
    40
!VariablePanel class methodsFor:'documentation'!
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    41
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    42
copyright
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    43
"
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    44
 COPYRIGHT (c) 1991 by Claus Gittinger
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    45
	      All Rights Reserved
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    46
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    47
 This software is furnished under a license and may be used
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    48
 only in accordance with the terms of that license and with the
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    49
 inclusion of the above copyright notice.   This software may not
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    50
 be provided or otherwise made available to, or used by, any
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    51
 other person.  No title to or ownership of the software is
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    52
 hereby transferred.
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    53
"
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    54
!
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    55
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    56
documentation
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    57
"
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    58
    a View to separate its subviews vertically by a movable bar;
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    59
    the size-ratios of the subviews can be changed by moving this bar.
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    60
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    61
    In order to correctly setup this kind of view, the subviews must
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    62
    be created with a relative origin & relative corner.
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    63
    The panel does not verify the relative subview bounds; 
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    64
    therefore, it is your responsibility to set those relative sizes to fit
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    65
    according the orientation (see bad example below).
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    66
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    67
    The bar-handle is either an exposed knob (style == #motif)
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    68
    or the form defined in Scroller (style ~~ #motif)
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    69
    or nothing.
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    70
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    71
    Typically creation is done as:
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    72
496
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
    73
        p := VariablePanel in:superView.
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
    74
        p orientation:#vertical.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    75
496
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
    76
        v1 := <someViewClass> origin:0.0 @ 0.0
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
    77
                              corner:1.0 @ 0.5
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
    78
                                  in:p.
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
    79
        v2 := <someViewClass> origin:0.0 @ 0.5 
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
    80
                              corner:1.0 @ 0.8 
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
    81
                                  in:p.
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
    82
        v3 := <someViewClass> origin:0.0 @ 0.8 
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
    83
                              corner:1.0 @ 1.0
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
    84
                                  in:p.
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
    85
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
    86
    The two subclasses VariableHorizontalPanel and VariableVerticalPanel
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
    87
    preset the orientation. They are a kept for backward compatibility
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
    88
    (in previous versions, there used to be no common VariablePanel (super-) class).
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    89
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    90
    Notice: if it is required to insert a fixed-size view in the panel,
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    91
    use an extra view & insets, and place the subview into that extra view.
1381
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
    92
    See examples.
496
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
    93
585
8f395aba0173 documentation
Claus Gittinger <cg@exept.de>
parents: 496
diff changeset
    94
    [instance Variables:]
496
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
    95
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
    96
        barHeight               <Integer>       the height of the bar (for verticalPanels)
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
    97
        barWidth                <Integer>       the width of the bar  (for horizontalPanels)
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
    98
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
    99
        separatingLine          <Boolean>       show a separating line (as in motif style)
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   100
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   101
        shadowForm              <Image/Form>    form (shadow part) drawn as handle - if nonNil
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   102
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   103
        lightForm               <Image/Form>    form (light part) drawn as handle - if nonNil
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   104
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   105
        showHandle              <Boolean>       if false, no handle is drawn
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   106
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   107
        handlePosition          <Symbol>        where is the handle - one of #left, #center, #right
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   108
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   109
        handleColor             <Color>         inside color of handle - defaults to viewBackground
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   110
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   111
        handleStyle             <Symbol>        type of handle; one of #next, #motif or nil
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   112
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   113
        handleLevel             <Integer>       3D level of handle (only valid if no form is given)
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   114
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   115
        trackLine               <Boolean>       if true, an inverted line is drawn for tracking;
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   116
                                                otherwise, the whole bar is inverted.
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   117
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   118
        redrawLocked                            internal - locks redraws while tracking
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   119
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   120
        orientation             <Symbol>        one of #horizontal / #vertical
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   121
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   122
585
8f395aba0173 documentation
Claus Gittinger <cg@exept.de>
parents: 496
diff changeset
   123
    [styleSheet values:]
1381
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
   124
        variablePanel.showHandle        true/false - should a handle be shown (default:true)
496
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   125
1381
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
   126
        variablePanel.handleStyle       #next / #motif / #iris / #full / nil (special handles)
496
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   127
1381
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
   128
        variablePanel.handlePosition    #left / #center / #right (default:#right)
496
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   129
1381
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
   130
        variablePanel.handleLevel       3D level of heandle (default:2)
496
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   131
1381
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
   132
        variablePanel.trackingLine      when moved, track an inverted line (as in motif)
496
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   133
                                        as opposed to tracking the whole bar (default:false)
1381
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
   134
                                        (obsoleted by trackingStyle)
496
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   135
1381
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
   136
        variablePanel.trackingStyle     #solidRectangle / #solidLine / #dashedLine
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
   137
                                        detailed control over how to draw tracking
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
   138
                                        (obsoletes trackingLine above)
496
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   139
1381
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
   140
        variablePanel.separatingLine    draw a separating line in the bar as in motif (default:false)
496
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
   141
1381
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
   142
        variablePanel.handleColor       color of the handle. (default:Black)
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
   143
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
   144
        variablePanel.handleEnteredColor 
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
   145
                                        color of the handle when the pointer is in the bar (default:nil)
585
8f395aba0173 documentation
Claus Gittinger <cg@exept.de>
parents: 496
diff changeset
   146
8f395aba0173 documentation
Claus Gittinger <cg@exept.de>
parents: 496
diff changeset
   147
    [see also:]
8f395aba0173 documentation
Claus Gittinger <cg@exept.de>
parents: 496
diff changeset
   148
        PanelView
8f395aba0173 documentation
Claus Gittinger <cg@exept.de>
parents: 496
diff changeset
   149
        
8f395aba0173 documentation
Claus Gittinger <cg@exept.de>
parents: 496
diff changeset
   150
    [author:]
8f395aba0173 documentation
Claus Gittinger <cg@exept.de>
parents: 496
diff changeset
   151
        Claus Gittinger
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   152
"
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   153
!
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   154
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   155
examples
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   156
"
874
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   157
   example (notice that the subviews MUST have relative bounds):
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   158
                                                                        [exBegin]
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   159
        |top p v1 v2 v3|
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   160
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   161
        top := StandardSystemView new.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   162
        top extent:300@300.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   163
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   164
        p := VariablePanel 
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   165
                 origin:0.0 @ 0.0
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   166
                 corner:1.0 @ 1.0
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   167
                 in:top.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   168
        p orientation:#vertical.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   169
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   170
        v1 := View origin:0.0@0.0 corner:1.0@(1/2) in:p.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   171
        v2 := View origin:0.0@(1/2) corner:1.0@(2/3) in:p.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   172
        v3 := View origin:0.0@(2/3) corner:1.0@1.0 in:p.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   173
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   174
        v1 viewBackground:(Color red).
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   175
        v2 viewBackground:(Color green).
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   176
        v3 viewBackground:(Color yellow).
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   177
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   178
        top open
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   179
                                                                        [exEnd]
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   180
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   181
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   182
876
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   183
   change the handles level:
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   184
                                                                        [exBegin]
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   185
        |top p v1 v2 v3|
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   186
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   187
        top := StandardSystemView new.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   188
        top extent:300@300.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   189
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   190
        p := VariablePanel 
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   191
                 origin:0.0 @ 0.0
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   192
                 corner:1.0 @ 1.0
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   193
                 in:top.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   194
        p orientation:#vertical.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   195
        p handleLevel:-1.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   196
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   197
        v1 := View origin:0.0@0.0 corner:1.0@(1/3) in:p.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   198
        v2 := View origin:0.0@(1/3) corner:1.0@(2/3) in:p.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   199
        v3 := View origin:0.0@(2/3) corner:1.0@1.0 in:p.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   200
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   201
        v1 viewBackground:(Color red).
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   202
        v2 viewBackground:(Color green).
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   203
        v3 viewBackground:(Color yellow).
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   204
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   205
        top open
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   206
                                                                        [exEnd]
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   207
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   208
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   209
876
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   210
   change the handles style to nil makes it invisible:
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   211
                                                                        [exBegin]
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   212
        |top p v1 v2 v3|
397
7038c3c38ced *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 396
diff changeset
   213
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   214
        top := StandardSystemView new.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   215
        top extent:300@300.
397
7038c3c38ced *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 396
diff changeset
   216
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   217
        p := VariablePanel 
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   218
                 origin:0.0 @ 0.0
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   219
                 corner:1.0 @ 1.0
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   220
                 in:top.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   221
        p orientation:#vertical.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   222
        p handleStyle:nil.
397
7038c3c38ced *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 396
diff changeset
   223
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   224
        v1 := View origin:0.0@0.0 corner:1.0@(1/3) in:p.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   225
        v2 := View origin:0.0@(1/3) corner:1.0@(2/3) in:p.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   226
        v3 := View origin:0.0@(2/3) corner:1.0@1.0 in:p.
397
7038c3c38ced *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 396
diff changeset
   227
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   228
        v1 viewBackground:(Color red).
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   229
        v2 viewBackground:(Color green).
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   230
        v3 viewBackground:(Color yellow).
397
7038c3c38ced *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 396
diff changeset
   231
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   232
        top open
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   233
                                                                        [exEnd]
397
7038c3c38ced *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 396
diff changeset
   234
7038c3c38ced *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 396
diff changeset
   235
7038c3c38ced *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 396
diff changeset
   236
876
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   237
   define your own handle (-bitmap):
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   238
                                                                        [exBegin]
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   239
        |top p v1 v2 v3|
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   240
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   241
        top := StandardSystemView new.
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   242
        top extent:300@300.
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   243
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   244
        p := VariablePanel 
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   245
                 origin:0.0 @ 0.0
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   246
                 corner:1.0 @ 1.0
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   247
                 in:top.
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   248
        p orientation:#vertical.
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   249
        p handleImage:(Image fromFile:'bitmaps/ScrollLt.8.xbm').
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   250
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   251
        v1 := View origin:0.0@0.0 corner:1.0@(1/3) in:p.
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   252
        v2 := View origin:0.0@(1/3) corner:1.0@(2/3) in:p.
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   253
        v3 := View origin:0.0@(2/3) corner:1.0@1.0 in:p.
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   254
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   255
        v1 viewBackground:(Color red).
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   256
        v2 viewBackground:(Color green).
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   257
        v3 viewBackground:(Color yellow).
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   258
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   259
        top open
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   260
                                                                        [exEnd]
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   261
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   262
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   263
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   264
   another handle-bitmap:
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   265
                                                                        [exBegin]
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   266
        |top p v1 v2 v3|
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   267
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   268
        top := StandardSystemView new.
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   269
        top extent:300@300.
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   270
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   271
        p := VariablePanel 
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   272
                 origin:0.0 @ 0.0
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   273
                 corner:1.0 @ 1.0
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   274
                 in:top.
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   275
        p orientation:#vertical.
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   276
        p handleImage:(Form width:9
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   277
                            height:11
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   278
                            fromArray:#(
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   279
                                        2r00000000 2r00000000
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   280
                                        2r00001000 2r00000000
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   281
                                        2r00011100 2r00000000
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   282
                                        2r00111110 2r00000000
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   283
                                        2r01111111 2r00000000
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   284
                                        2r00000000 2r00000000
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   285
                                        2r01111111 2r00000000
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   286
                                        2r00111110 2r00000000
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   287
                                        2r00011100 2r00000000
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   288
                                        2r00001000 2r00000000
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   289
                                        2r00000000 2r00000000
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   290
                                       )
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   291
                      ).
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   292
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   293
        v1 := View origin:0.0@0.0 corner:1.0@(1/3) in:p.
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   294
        v2 := View origin:0.0@(1/3) corner:1.0@(2/3) in:p.
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   295
        v3 := View origin:0.0@(2/3) corner:1.0@1.0 in:p.
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   296
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   297
        v1 viewBackground:(Color red).
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   298
        v2 viewBackground:(Color green).
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   299
        v3 viewBackground:(Color yellow).
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   300
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   301
        top open
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   302
                                                                        [exEnd]
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   303
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   304
    placing scrolled and unscrolled views into a variablePanel:
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   305
                                                                        [exBegin]
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   306
        |top p v1 v2 v3|
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   307
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   308
        top := StandardSystemView new.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   309
        top extent:300@300.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   310
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   311
        p := VariablePanel 
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   312
                 origin:0.0 @ 0.0
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   313
                 corner:1.0 @ 1.0
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   314
                 in:top.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   315
        p orientation:#vertical.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   316
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   317
        v1 := ScrollableView for:SelectionInListView in:p.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   318
        v1 origin:0.0 @ 0.0 corner:1.0 @ 0.5.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   319
        v1 list:(FileDirectory directoryNamed:'/etc') contents.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   320
        v1 action:[:selNr |
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   321
                |fullName stream text|
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   322
                fullName := '/etc/' , v1 selectionValue.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   323
                stream := fullName asFilename readStream.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   324
                stream notNil ifTrue:[
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   325
                    text := stream contents.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   326
                    v2 contents:text.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   327
                    v3 contents:text
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   328
                ]
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   329
        ].
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   330
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   331
        v2 := TextView origin:0.0 @ 0.5 corner:1.0 @ 0.8 in:p.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   332
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   333
        v3 := ScrollableView for:TextView in:p.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   334
        v3 origin:0.0 @ 0.8 corner:1.0 @ 1.0.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   335
        top open
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   336
                                                                        [exEnd]
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   337
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   338
876
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   339
    dynamically adding/removing views:
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   340
                                                                        [exBegin]
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   341
        |top p v1 v2 b|
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   342
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   343
        top := StandardSystemView new.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   344
        top extent:300@300.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   345
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   346
        b := Toggle label:'show' in:top.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   347
        b showLamp:false.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   348
        b origin:0.0 @ 0.0 corner:(1.0 @ 40).
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   349
        b action:[:state |
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   350
                state ifTrue:[
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   351
                    b label:'hide'.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   352
                    v1 origin:0.0 @ 0.0 corner:1.0 @ 0.5.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   353
                    v2 := ScrollableView for:EditTextView.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   354
                    v2 origin:0.0 @ 0.5 corner:1.0 @ 1.0.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   355
                    v2 contents:'another text'.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   356
                    p addSubView:v2.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   357
                    v2 realize.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   358
                ] ifFalse:[
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   359
                    b label:'show'.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   360
                    v2 destroy.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   361
                    v1 origin:0.0 @ 0.0 corner:1.0 @ 1.0
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   362
                ]
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   363
            ].
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   364
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   365
        p := VariablePanel
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   366
                origin:0.0 @ 0.0
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   367
                corner:1.0 @ 1.0
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   368
                in:top.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   369
        p orientation:#vertical.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   370
        p topInset:50.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   371
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   372
        v1 := ScrollableView for:EditTextView in:p.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   373
        v1 origin:0.0 @ 0.0 corner:1.0 @ 1.0.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   374
        v1 contents:'some text'.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   375
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   376
        top open
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   377
                                                                        [exEnd]
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   378
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   379
876
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   380
    dynamically flipping orientation:
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   381
    Notice: you have to change the relative bounds of the subviews first.
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   382
                                                                        [exBegin]
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   383
        |top p v1 v2 b|
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   384
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   385
        top := StandardSystemView new.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   386
        top extent:300@300.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   387
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   388
        b := Toggle label:'flip' in:top.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   389
        b showLamp:false.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   390
        b origin:0.0 @ 0.0 corner:(1.0 @ 40).
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   391
        b action:[:state |
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   392
                state ifTrue:[
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   393
                    v1 origin:0.0 @ 0.0 corner:0.5 @ 1.0.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   394
                    v2 origin:0.5 @ 0.0 corner:1.0 @ 1.0.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   395
                    p orientation:#horizontal.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   396
                ] ifFalse:[
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   397
                    v1 origin:0.0 @ 0.0 corner:1.0 @ 0.5.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   398
                    v2 origin:0.0 @ 0.5 corner:1.0 @ 1.0.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   399
                    p orientation:#vertical.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   400
                ].
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   401
            ].
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   402
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   403
        p := VariablePanel
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   404
                origin:0.0 @ 0.0
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   405
                corner:1.0 @ 1.0
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   406
                in:top.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   407
        p orientation:#vertical.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   408
        p topInset:50.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   409
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   410
        v1 := ScrollableView for:EditTextView in:p.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   411
        v1 origin:0.0 @ 0.0 corner:1.0 @ 0.5.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   412
        v1 contents:'some text'.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   413
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   414
        v2 := ScrollableView for:EditTextView in:p.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   415
        v2 origin:0.0 @ 0.5 corner:1.0 @ 1.0.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   416
        v2 contents:'another text'.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   417
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   418
        top open
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   419
                                                                        [exEnd]
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   420
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   421
876
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
   422
   combining fix-size with variable size:
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   423
   (need 3 extra frame-views to place the extra labels into)
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   424
                                                                        [exBegin]
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   425
        |top p v1 l1 v2 l2 v3 l3 f1 f2 f3|
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   426
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   427
        top := StandardSystemView new.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   428
        top extent:300@300.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   429
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   430
        p := VariablePanel 
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   431
                 origin:0.0 @ 0.0
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   432
                 corner:1.0 @ 1.0
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   433
                 in:top.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   434
874
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   435
        p orientation:#vertical.
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   436
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   437
        f1 := View origin:0.0@0.0 corner:1.0@0.3 in:p.
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   438
        f2 := View origin:0.0@0.3 corner:1.0@0.6 in:p.
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   439
        f3 := View origin:0.0@0.6 corner:1.0@1.0 in:p.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   440
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   441
        v1 := View origin:0.0 @ 0.0 corner:1.0 @ 1.0 in:f1.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   442
        v2 := View origin:0.0 @ 0.0 corner:1.0 @ 1.0 in:f2.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   443
        v3 := View origin:0.0 @ 0.0 corner:1.0 @ 1.0 in:f3.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   444
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   445
        l1 := Label label:'sub1' in:f1.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   446
        l2 := Label label:'sub2' in:f2.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   447
        l3 := Label label:'sub3' in:f3.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   448
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   449
        l1 origin:0.0 @ 0.0 corner:1.0 @ 0.0 ; 
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   450
           bottomInset:(l1 preferredExtent y negated).
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   451
        l2 origin:0.0 @ 0.0 corner:1.0 @ 0.0 ; 
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   452
           bottomInset:(l2 preferredExtent y negated).
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   453
        l3 origin:0.0 @ 0.0 corner:1.0 @ 0.0 ; 
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   454
           bottomInset:(l3 preferredExtent y negated).
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   455
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   456
        v1 topInset:(l1 preferredExtent y); level:-1.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   457
        v2 topInset:(l2 preferredExtent y); level:-1.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   458
        v3 topInset:(l3 preferredExtent y); level:-1.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   459
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   460
        v1 viewBackground:(Color red).
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   461
        v2 viewBackground:(Color green).
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   462
        v3 viewBackground:(Color yellow).
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   463
874
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   464
        top open
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   465
                                                                        [exEnd]
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   466
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   467
   VerticalPansels allow a label to be associated with the
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   468
   handles; this looks much like the above, but is slightly
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   469
   more compact. Notice, no label can be placed above the first 
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   470
   view - it has no handle.
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   471
                                                                        [exBegin]
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   472
        |top p v1 v2 v3|
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   473
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   474
        top := StandardSystemView new.
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   475
        top extent:300@300.
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   476
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   477
        p := VariablePanel 
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   478
                 origin:0.0 @ 0.0
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   479
                 corner:1.0 @ 1.0
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   480
                 in:top.
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   481
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   482
        p orientation:#vertical.
874
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   483
        p handleLabels:#('ignored' 'sub2' 'sub3').
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   484
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   485
        v1 := View origin:0.0@0.0 corner:1.0@0.3 in:p.
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   486
        v2 := View origin:0.0@0.3 corner:1.0@0.6 in:p.
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   487
        v3 := View origin:0.0@0.6 corner:1.0@1.0 in:p.
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   488
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   489
        v1 viewBackground:(Color red).
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   490
        v2 viewBackground:(Color green).
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   491
        v3 viewBackground:(Color yellow).
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   492
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   493
        top open
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   494
                                                                        [exEnd]
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   495
874
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   496
   handle labels can be more than strings ....
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   497
   (however, they should have about the same height, since
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   498
    the largest defines heights of all bars;
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   499
    retry the example below with a larger bitmap image ...)
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   500
                                                                        [exBegin]
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   501
        |top e p v1 v2 v3|
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   502
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   503
        top := StandardSystemView new.
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   504
        top extent:300@300.
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   505
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   506
        p := VariablePanel 
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   507
                 origin:0.0 @ 0.0
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   508
                 corner:1.0 @ 1.0
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   509
                 in:top.
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   510
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   511
        p orientation:#vertical.
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   512
        e := Array with:#bold
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   513
                   with:#color->Color red.
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   514
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   515
        p handleLabels:(Array with:nil
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   516
                              with:('bold and red' asText emphasizeAllWith:e)
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   517
                              with:(Image fromFile:'ScrollRt.xbm')).
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   518
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   519
        v1 := View origin:0.0@0.0 corner:1.0@0.3 in:p.
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   520
        v2 := View origin:0.0@0.3 corner:1.0@0.6 in:p.
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   521
        v3 := View origin:0.0@0.6 corner:1.0@1.0 in:p.
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   522
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   523
        v1 viewBackground:(Color red).
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   524
        v2 viewBackground:(Color green).
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   525
        v3 viewBackground:(Color yellow).
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   526
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   527
        top open
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   528
                                                                        [exEnd]
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   529
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
   530
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   531
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   532
   BAD EXAMPLE (wrong relative sizes - repaired on handle move):
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   533
                                                                        [exBegin]
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   534
        |top p v1 v2 v3|
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   535
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   536
        top := StandardSystemView new.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   537
        top extent:300@300.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   538
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   539
        p := VariablePanel 
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   540
                 origin:0.0 @ 0.0
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   541
                 corner:1.0 @ 1.0
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   542
                 in:top.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   543
        p orientation:#vertical.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   544
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   545
        v1 := View origin:0.0 @ 0.0   corner:1.0 @ (1/4) in:p.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   546
        v2 := View origin:0.0 @ (1/2) corner:1.0 @ (3/4) in:p.
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   547
        v3 := View origin:0.0 @ (3/4) corner:1.0 @ 1.0   in:p.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   548
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   549
        v1 viewBackground:(Color red).
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   550
        v2 viewBackground:(Color green).
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   551
        v3 viewBackground:(Color yellow).
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   552
593
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   553
        top open
86dd024ed773 examples
Claus Gittinger <cg@exept.de>
parents: 585
diff changeset
   554
                                                                        [exEnd]
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   555
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   556
   example with snapMode:
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   557
                                                                        [exBegin]
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   558
        |top p v1 v2 v3|
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   559
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   560
        top := StandardSystemView new.
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   561
        top extent:300@300.
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   562
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   563
        p := VariablePanel 
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   564
                 origin:0.0 @ 0.0
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   565
                 corner:1.0 @ 1.0
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   566
                 in:top.
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   567
        p orientation:#vertical.
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   568
        p snapMode:#min.
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   569
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   570
        v1 := View origin:0.0@0.0 corner:1.0@(1/2) in:p.
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   571
        v2 := View origin:0.0@(1/2) corner:1.0@(2/3) in:p.
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   572
        v3 := View origin:0.0@(2/3) corner:1.0@1.0 in:p.
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   573
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   574
        v1 viewBackground:(Color red).
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   575
        v2 viewBackground:(Color green).
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   576
        v3 viewBackground:(Color yellow).
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   577
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   578
        top open
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   579
                                                                        [exEnd]
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   580
4043
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   581
   example with redefined handle-image:
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   582
                                                                        [exBegin]
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   583
        |top p v1 v2 v3|
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   584
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   585
        top := StandardSystemView new.
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   586
        top extent:300@300.
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   587
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   588
        p := VariablePanel 
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   589
                 origin:0.0 @ 0.0
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   590
                 corner:1.0 @ 1.0
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   591
                 in:top.
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   592
        p orientation:#vertical.
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   593
        p handleImage:(ToolbarIconLibrary barResizeVerticalIcon).
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   594
        p showHandle:true.
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   595
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   596
        v1 := View origin:0.0@0.0 corner:1.0@(1/2) in:p.
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   597
        v2 := View origin:0.0@(1/2) corner:1.0@(2/3) in:p.
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   598
        v3 := View origin:0.0@(2/3) corner:1.0@1.0 in:p.
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   599
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   600
        v1 viewBackground:(Color red).
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   601
        v2 viewBackground:(Color green).
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   602
        v3 viewBackground:(Color yellow).
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   603
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   604
        top open
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   605
                                                                        [exEnd]
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   606
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   607
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   608
"
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   609
! !
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   610
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
   611
!VariablePanel class methodsFor:'defaults'!
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   612
1158
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   613
cursorForOrientation:orientation
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   614
    "return an appropriate cursor"
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   615
4862
19b707a36148 Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 4632
diff changeset
   616
    ^ self cursorForOrientation:orientation onDevice:Screen current.
1698
cab69c6081a8 use windows-like cursors if running on windows
Claus Gittinger <cg@exept.de>
parents: 1655
diff changeset
   617
cab69c6081a8 use windows-like cursors if running on windows
Claus Gittinger <cg@exept.de>
parents: 1655
diff changeset
   618
    "Modified: / 30.9.1998 / 18:21:10 / cg"
cab69c6081a8 use windows-like cursors if running on windows
Claus Gittinger <cg@exept.de>
parents: 1655
diff changeset
   619
!
cab69c6081a8 use windows-like cursors if running on windows
Claus Gittinger <cg@exept.de>
parents: 1655
diff changeset
   620
cab69c6081a8 use windows-like cursors if running on windows
Claus Gittinger <cg@exept.de>
parents: 1655
diff changeset
   621
cursorForOrientation:orientation onDevice:device
cab69c6081a8 use windows-like cursors if running on windows
Claus Gittinger <cg@exept.de>
parents: 1655
diff changeset
   622
    "return an appropriate cursor"
cab69c6081a8 use windows-like cursors if running on windows
Claus Gittinger <cg@exept.de>
parents: 1655
diff changeset
   623
1158
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   624
    |cursor|
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   625
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   626
    orientation == #vertical ifTrue:[
4862
19b707a36148 Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 4632
diff changeset
   627
        (DefaultVCursor notNil and:[device == Display]) ifTrue:[
1158
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   628
            cursor := DefaultVCursor
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   629
        ] ifFalse:[
4980
7de6c3eadf49 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 4960
diff changeset
   630
            device isWindowsPlatform ifFalse:[
5728
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   631
                cursor := Cursor
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   632
                            fromImage:self verticalResizeCursor
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   633
                            hotSpot:8@8.
1698
cab69c6081a8 use windows-like cursors if running on windows
Claus Gittinger <cg@exept.de>
parents: 1655
diff changeset
   634
            ].
cab69c6081a8 use windows-like cursors if running on windows
Claus Gittinger <cg@exept.de>
parents: 1655
diff changeset
   635
1158
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   636
            "
1698
cab69c6081a8 use windows-like cursors if running on windows
Claus Gittinger <cg@exept.de>
parents: 1655
diff changeset
   637
             if bitmaps are not available or under Win95, 
cab69c6081a8 use windows-like cursors if running on windows
Claus Gittinger <cg@exept.de>
parents: 1655
diff changeset
   638
             use a standard cursor
1158
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   639
            "
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   640
            cursor isNil ifTrue:[
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   641
                "which one looks better ?"
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   642
                cursor := Cursor upDownArrow
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   643
                "cursor := Cursor upLimitArrow"
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   644
            ].
4862
19b707a36148 Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 4632
diff changeset
   645
            device == Display ifTrue:[
19b707a36148 Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 4632
diff changeset
   646
                DefaultVCursor := cursor.
19b707a36148 Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 4632
diff changeset
   647
            ].
1158
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   648
        ]
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   649
    ] ifFalse:[
4862
19b707a36148 Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 4632
diff changeset
   650
        (DefaultHCursor notNil and:[device == Display]) ifTrue:[      
1158
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   651
            cursor := DefaultHCursor
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   652
        ] ifFalse:[
4980
7de6c3eadf49 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 4960
diff changeset
   653
            device isWindowsPlatform ifFalse:[
5728
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   654
                cursor := Cursor
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   655
                            fromImage:self horizontalResizeCursor
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   656
                            hotSpot:8@8.
1698
cab69c6081a8 use windows-like cursors if running on windows
Claus Gittinger <cg@exept.de>
parents: 1655
diff changeset
   657
            ].
1158
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   658
            "
1698
cab69c6081a8 use windows-like cursors if running on windows
Claus Gittinger <cg@exept.de>
parents: 1655
diff changeset
   659
             if bitmaps are not available or under Win95, 
cab69c6081a8 use windows-like cursors if running on windows
Claus Gittinger <cg@exept.de>
parents: 1655
diff changeset
   660
             use a standard cursor
1158
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   661
            "
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   662
            cursor isNil ifTrue:[
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   663
                "which one looks better ?"
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   664
                cursor := Cursor leftRightArrow
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   665
                "cursor := Cursor leftLimitArrow"
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   666
            ].
4862
19b707a36148 Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 4632
diff changeset
   667
            device == Display ifTrue:[
19b707a36148 Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 4632
diff changeset
   668
                DefaultHCursor := cursor
19b707a36148 Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 4632
diff changeset
   669
            ].
1158
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   670
        ]
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   671
    ].
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   672
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   673
    ^ cursor
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   674
1698
cab69c6081a8 use windows-like cursors if running on windows
Claus Gittinger <cg@exept.de>
parents: 1655
diff changeset
   675
    "
cab69c6081a8 use windows-like cursors if running on windows
Claus Gittinger <cg@exept.de>
parents: 1655
diff changeset
   676
     DefaultVCursor := DefaultHCursor := nil.
cab69c6081a8 use windows-like cursors if running on windows
Claus Gittinger <cg@exept.de>
parents: 1655
diff changeset
   677
    "
cab69c6081a8 use windows-like cursors if running on windows
Claus Gittinger <cg@exept.de>
parents: 1655
diff changeset
   678
cab69c6081a8 use windows-like cursors if running on windows
Claus Gittinger <cg@exept.de>
parents: 1655
diff changeset
   679
    "Created: / 30.9.1998 / 18:20:41 / cg"
cab69c6081a8 use windows-like cursors if running on windows
Claus Gittinger <cg@exept.de>
parents: 1655
diff changeset
   680
    "Modified: / 30.9.1998 / 18:23:07 / cg"
1158
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   681
!
225c0d52068d cursor default is now a class method.
Claus Gittinger <cg@exept.de>
parents: 1151
diff changeset
   682
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   683
lightFormOn:aDisplay
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   684
    "use same handle as Scroller"
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   685
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   686
    ^ Scroller handleLightFormOn:aDisplay
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   687
!
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   688
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   689
shadowFormOn:aDisplay
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   690
    "use same handle as Scroller"
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   691
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   692
    ^ Scroller handleShadowFormOn:aDisplay
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   693
!
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   694
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   695
snapIcons
4632
475e0ac05fbb class: VariablePanel
Stefan Vogel <sv@exept.de>
parents: 4624
diff changeset
   696
    "return a dictionary of snapIcons"
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   697
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   698
    DefaultSnapIcons isNil ifTrue:[
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   699
        DefaultSnapIcons := IdentityDictionary new.
2269
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   700
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   701
        DefaultSnapIcons at:#iconUp    put:self snapIconUp.
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   702
        DefaultSnapIcons at:#iconRight put:self snapIconRight.
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   703
        DefaultSnapIcons at:#iconDown  put:self snapIconDown.
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   704
        DefaultSnapIcons at:#iconLeft  put:self snapIconLeft.
2236
cd77d04c9a0a snapMode: #both
Claus Gittinger <cg@exept.de>
parents: 2228
diff changeset
   705
cd77d04c9a0a snapMode: #both
Claus Gittinger <cg@exept.de>
parents: 2228
diff changeset
   706
        DefaultSnapIcons at:#iconUpDown    put:self snapIconUpDown.
2269
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   707
        DefaultSnapIcons at:#iconLeftRight put:self snapIconLeftRight.
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   708
    ].
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   709
    ^ DefaultSnapIcons
4632
475e0ac05fbb class: VariablePanel
Stefan Vogel <sv@exept.de>
parents: 4624
diff changeset
   710
475e0ac05fbb class: VariablePanel
Stefan Vogel <sv@exept.de>
parents: 4624
diff changeset
   711
    "
475e0ac05fbb class: VariablePanel
Stefan Vogel <sv@exept.de>
parents: 4624
diff changeset
   712
        DefaultSnapIcons := nil.
475e0ac05fbb class: VariablePanel
Stefan Vogel <sv@exept.de>
parents: 4624
diff changeset
   713
        self snapIcons
475e0ac05fbb class: VariablePanel
Stefan Vogel <sv@exept.de>
parents: 4624
diff changeset
   714
    "
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   715
!
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
   716
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   717
updateStyleCache
441
e170bca66a78 added style resource directive
Claus Gittinger <cg@exept.de>
parents: 397
diff changeset
   718
    "extract values from the styleSheet and cache them in class variables"
e170bca66a78 added style resource directive
Claus Gittinger <cg@exept.de>
parents: 397
diff changeset
   719
1388
ac52d9b7c8dc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1381
diff changeset
   720
    <resource: #style (#'variablePanel.showHandle' 
1529
509edab0a08b allow handleImage to be specified in styleSheet
Claus Gittinger <cg@exept.de>
parents: 1416
diff changeset
   721
                       #'variablePanel.handleStyle'
509edab0a08b allow handleImage to be specified in styleSheet
Claus Gittinger <cg@exept.de>
parents: 1416
diff changeset
   722
                       #'variablePanel.handleImage'
509edab0a08b allow handleImage to be specified in styleSheet
Claus Gittinger <cg@exept.de>
parents: 1416
diff changeset
   723
                       #'variablePanel.handlePosition' 
509edab0a08b allow handleImage to be specified in styleSheet
Claus Gittinger <cg@exept.de>
parents: 1416
diff changeset
   724
                       #'variablePanel.handleLevel'
2228
d74b093fe48d snapHandlePosition adjustable
Claus Gittinger <cg@exept.de>
parents: 2179
diff changeset
   725
                       #'variablePanel.snapHandlePosition' 
1529
509edab0a08b allow handleImage to be specified in styleSheet
Claus Gittinger <cg@exept.de>
parents: 1416
diff changeset
   726
                       #'variablePanel.trackingLine'   
509edab0a08b allow handleImage to be specified in styleSheet
Claus Gittinger <cg@exept.de>
parents: 1416
diff changeset
   727
                       #'variablePanel.trackingStyle'
509edab0a08b allow handleImage to be specified in styleSheet
Claus Gittinger <cg@exept.de>
parents: 1416
diff changeset
   728
                       #'variablePanel.separatingLine' 
509edab0a08b allow handleImage to be specified in styleSheet
Claus Gittinger <cg@exept.de>
parents: 1416
diff changeset
   729
                       #'variablePanel.handleColor')>
441
e170bca66a78 added style resource directive
Claus Gittinger <cg@exept.de>
parents: 397
diff changeset
   730
1129
17a77892f180 added support for dashed-LineTrack
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
   731
    |lineModeBoolean|
17a77892f180 added support for dashed-LineTrack
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
   732
2084
5e2d277d82a8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2073
diff changeset
   733
    DefaultVCursor := DefaultHCursor := nil.
5e2d277d82a8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2073
diff changeset
   734
1869
b435e03cf803 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1821
diff changeset
   735
    DefaultShowHandle := StyleSheet at:#'variablePanel.showHandle' default:true.
4206
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
   736
    DefaultShowHandleWhenEntered := StyleSheet at:#'variablePanel.showHandleWhenEntered' default:false.
1869
b435e03cf803 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1821
diff changeset
   737
    DefaultHandleStyle := StyleSheet at:#'variablePanel.handleStyle'.
b435e03cf803 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1821
diff changeset
   738
    DefaultHandlePosition := StyleSheet at:#'variablePanel.handlePosition' "default:#right".
1381
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
   739
    DefaultHandlePosition isNil ifTrue:[
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
   740
        DefaultHandlePosition := ScrollableView defaultScrollBarPosition.
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
   741
    ].
2252
67269562b687 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2244
diff changeset
   742
    DefaultSnapHandlePosition := StyleSheet at:#'variablePanel.snapHandlePosition' default:DefaultHandlePosition.
1869
b435e03cf803 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1821
diff changeset
   743
    DefaultHandleLevel := StyleSheet at:#'variablePanel.handleLevel' default:2.
b435e03cf803 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1821
diff changeset
   744
    DefaultTrackingLine := StyleSheet at:#'variablePanel.trackingStyle'.
1129
17a77892f180 added support for dashed-LineTrack
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
   745
    DefaultTrackingLine isNil ifTrue:[
1869
b435e03cf803 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1821
diff changeset
   746
        lineModeBoolean := StyleSheet at:#'variablePanel.trackingLine' default:false.
1129
17a77892f180 added support for dashed-LineTrack
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
   747
        lineModeBoolean ifTrue:[
17a77892f180 added support for dashed-LineTrack
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
   748
            DefaultTrackingLine := #solidLine
17a77892f180 added support for dashed-LineTrack
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
   749
        ] ifFalse:[
17a77892f180 added support for dashed-LineTrack
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
   750
            DefaultTrackingLine := #solidRectangle
17a77892f180 added support for dashed-LineTrack
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
   751
        ]
17a77892f180 added support for dashed-LineTrack
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
   752
    ].
17a77892f180 added support for dashed-LineTrack
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
   753
1869
b435e03cf803 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1821
diff changeset
   754
    DefaultSeparatingLine := StyleSheet at:#'variablePanel.separatingLine' default:false.
4920
78c00f9e85d2 class: VariablePanel
Stefan Vogel <sv@exept.de>
parents: 4862
diff changeset
   755
    DefaultHandleColor := StyleSheet colorAt:#'variablePanel.handleColor' default:Color black.
441
e170bca66a78 added style resource directive
Claus Gittinger <cg@exept.de>
parents: 397
diff changeset
   756
1869
b435e03cf803 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1821
diff changeset
   757
    DefaultHandleImage := StyleSheet at:#'variablePanel.handleImage'
1529
509edab0a08b allow handleImage to be specified in styleSheet
Claus Gittinger <cg@exept.de>
parents: 1416
diff changeset
   758
1129
17a77892f180 added support for dashed-LineTrack
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
   759
    "
17a77892f180 added support for dashed-LineTrack
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
   760
     VariablePanel updateStyleCache
17a77892f180 added support for dashed-LineTrack
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
   761
    "
17a77892f180 added support for dashed-LineTrack
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
   762
4206
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
   763
    "Modified: / 19-12-2010 / 09:39:50 / cg"
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   764
! !
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   765
2269
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   766
!VariablePanel class methodsFor:'image specs'!
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   767
5728
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   768
horizontalResizeCursor
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   769
    "This resource specification was automatically generated
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   770
     by the ImageEditor of ST/X."
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   771
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   772
    "Do not manually edit this!! If it is corrupted,
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   773
     the ImageEditor may not be able to read the specification."
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   774
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   775
    "
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   776
     self horizontalResizeCursor inspect
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   777
     ImageEditor openOnClass:self andSelector:#horizontalResizeCursor
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   778
     Icon flushCachedIcons
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   779
    "
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   780
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   781
    <resource: #image>
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   782
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   783
    ^Icon
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   784
        constantNamed:'VariablePanel horizontalResizeCursor'
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   785
        ifAbsentPut:[(Depth1Image width:16 height:16) bits:(ByteArray fromPackedString:'@X@A @F@@X@!!!!AFHBYC=/0&PDX !!!!@F@@X@A @F@@@@b')
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   786
            colorMapFromArray:#[255 255 255 0 0 0]
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   787
            mask:((ImageMask width:16 height:16) bits:(ByteArray fromPackedString:'@<@C0@O@X<Y33#/\????????N=133&OF@<@C0@O@@@@b'); yourself); yourself]
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   788
!
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   789
2269
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   790
snapIconDown
5038
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   791
    <resource: #image>
2269
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   792
    "This resource specification was automatically generated
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   793
     by the ImageEditor of ST/X."
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   794
    "Do not manually edit this!! If it is corrupted,
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   795
     the ImageEditor may not be able to read the specification."
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   796
    "
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   797
     self snapIconDown inspect
5038
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   798
     ImageEditor openOnClass:self andSelector:#snapIconDown"
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   799
    
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   800
    ^ Icon constantNamed:#'VariablePanel class snapIconDown'
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   801
        ifAbsentPut:[
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   802
            (Depth2Image new)
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   803
                width:62;
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   804
                height:5;
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   805
                photometric:(#palette);
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   806
                bitsPerSample:(#( 2 ));
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   807
                samplesPerPixel:(1);
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   808
                bits:(ByteArray 
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   809
                            fromPackedString:'@@@@@@@@@@@@@@@@@@@@@@@@B(J *F(Z!!*F(Z!!*@@@@@@@!!BDHQ!!FDXQ!!FDXP@@H@@@EPUATEPUATEPUAT@@@@@@@@@@@@@@@@@@@@@@@@@b');
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   810
                colorMapFromArray:#[ 0 0 0 68 68 68 255 255 255 ];
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   811
                mask:((ImageMask new)
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   812
                            width:62;
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   813
                            height:5;
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   814
                            bits:(ByteArray 
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   815
                                        fromPackedString:'@@@@@@@@@@A?LX1#FLX3>C8)R%JT)R''0GA#FLX1#FN@H@@@@@@@@P@@a');
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   816
                            yourself);
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   817
                yourself
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   818
        ]
2482
b499b4a10907 fixed removeSubView
martin
parents: 2305
diff changeset
   819
!
2269
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   820
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   821
snapIconLeft
5038
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   822
    <resource: #image>
2269
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   823
    "This resource specification was automatically generated
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   824
     by the ImageEditor of ST/X."
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   825
    "Do not manually edit this!! If it is corrupted,
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   826
     the ImageEditor may not be able to read the specification."
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   827
    "
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   828
     self snapIconLeft inspect
5038
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   829
     ImageEditor openOnClass:self andSelector:#snapIconLeft"
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   830
    
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   831
    ^ Icon constantNamed:#'VariablePanel class snapIconLeft'
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   832
        ifAbsentPut:[
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   833
            (Depth2Image new)
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   834
                width:5;
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   835
                height:62;
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   836
                photometric:(#palette);
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   837
                bitsPerSample:(#( 2 ));
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   838
                samplesPerPixel:(1);
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   839
                bits:(ByteArray 
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   840
                            fromPackedString:'
2590
9e2e11f928f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2533
diff changeset
   841
@C @B@@@@@@@@@@@@@@@@@@P@C@)@BD@IP@@@@@BJP@!!@BT@@@@@@B$HHP %@@@@AP@)@BD@IP@@D@T0JP@!!@BT@@@@ED2$@HP@%@@@@AP@)ARDHIP@@@@T@
5038
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   842
JP@!!@BT@@A@ELB @HP@E@@@@@C\@@@@@@@@@@@@@@@T@B@@a');
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   843
                colorMapFromArray:#[ 0 0 0 68 68 68 255 255 255 ];
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   844
                mask:((ImageMask new)
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   845
                            width:5;
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   846
                            height:62;
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   847
                            bits:(ByteArray 
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   848
                                        fromPackedString:'@A@0\OA0LA@D@6UPL@@@XE@0@@A TC@@@FAPL@@@XE@0@@A UCLD@FAPL@@@XE@0@@A TC@@DCA0=''T0D@@b');
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   849
                            yourself);
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   850
                yourself
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   851
        ]
2482
b499b4a10907 fixed removeSubView
martin
parents: 2305
diff changeset
   852
!
2269
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   853
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   854
snapIconLeftRight
5038
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   855
    <resource: #image>
2269
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   856
    "This resource specification was automatically generated
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   857
     by the ImageEditor of ST/X."
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   858
    "Do not manually edit this!! If it is corrupted,
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   859
     the ImageEditor may not be able to read the specification."
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   860
    "
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   861
     self snapIconLeftRight inspect
5038
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   862
     ImageEditor openOnClass:self andSelector:#snapIconLeftRight"
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   863
    
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   864
    ^ Icon constantNamed:#'VariablePanel class snapIconLeftRight'
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   865
        ifAbsentPut:[
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   866
            (Depth2Image new)
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   867
                width:5;
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   868
                height:62;
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   869
                photometric:(#palette);
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   870
                bitsPerSample:(#( 2 ));
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   871
                samplesPerPixel:(1);
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   872
                bits:(ByteArray 
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   873
                            fromPackedString:'
2590
9e2e11f928f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2533
diff changeset
   874
@@@@@@@K@AH@@@@@@AX@L@@@@@@(@BD@AQD@B@@FJ#@!!@AT@@@@@@J*@@@@@DP@H@AD*LBD@EP@@@@@@J"\!!B1T@@@@@E"(0HP@U@@@@@@B*$P@H@@X@L@@@
5038
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   875
J @!!@AT@@@@@@B(RHP UDP@0@@@@@@@@@@@@I0@K@@@@@@@a');
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   876
                colorMapFromArray:#[ 0 0 0 68 68 68 255 255 255 ];
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   877
                mask:((ImageMask new)
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   878
                            width:5;
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   879
                            height:62;
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   880
                            bits:(ByteArray 
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   881
                                        fromPackedString:' LC <NK@ @@A@&QPLP@@XE@0@@C<A? A@VAPL@@@XE@0@@A TCL@@O @>@@BXE@0@PY$TCD@@A@0\OA0LAXb');
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   882
                            yourself);
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   883
                yourself
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   884
        ]
2482
b499b4a10907 fixed removeSubView
martin
parents: 2305
diff changeset
   885
!
2269
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   886
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   887
snapIconRight
5038
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   888
    <resource: #image>
2269
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   889
    "This resource specification was automatically generated
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   890
     by the ImageEditor of ST/X."
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   891
    "Do not manually edit this!! If it is corrupted,
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   892
     the ImageEditor may not be able to read the specification."
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   893
    "
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   894
     self snapIconRight inspect
5038
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   895
     ImageEditor openOnClass:self andSelector:#snapIconRight"
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   896
    
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   897
    ^ Icon constantNamed:#'VariablePanel class snapIconRight'
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   898
        ifAbsentPut:[
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   899
            (Depth2Image new)
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   900
                width:5;
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   901
                height:62;
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   902
                photometric:(#palette);
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   903
                bitsPerSample:(#( 2 ));
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   904
                samplesPerPixel:(1);
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   905
                bits:(ByteArray 
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   906
                            fromPackedString:'
2590
9e2e11f928f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2533
diff changeset
   907
@@L@@@@@@@@@@@@@@AT@B@@@J@@!!@@T@E@@@@B(QHS@U@AP@@@@*@BD@EP@T@@@@J L!!@AT@E@@@DB(0HP@U@AP@@@@*J"D@EP@T@@@@J @!!B!!TH@@@@@B(@
5038
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   908
HP@U@@@@@A@*LBD@EP@@@@@@@@X@@@@@@@@@@@@@@@ @B@@a');
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   909
                colorMapFromArray:#[ 0 0 0 68 68 68 255 255 255 ];
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   910
                mask:((ImageMask new)
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   911
                            width:5;
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   912
                            height:62;
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   913
                            bits:(ByteArray 
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   914
                                        fromPackedString:'@4A \G%2X4@AXE@0@@A TC@E@6AQL@@@XE@0@@A TC@@@6APL@@@XEL0@@A UC\@@VAPL@@@PFA0^''M PP@b');
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   915
                            yourself);
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   916
                yourself
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   917
        ]
2482
b499b4a10907 fixed removeSubView
martin
parents: 2305
diff changeset
   918
!
2269
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   919
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   920
snapIconUp
5038
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   921
    <resource: #image>
2269
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   922
    "This resource specification was automatically generated
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   923
     by the ImageEditor of ST/X."
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   924
    "Do not manually edit this!! If it is corrupted,
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   925
     the ImageEditor may not be able to read the specification."
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   926
    "
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   927
     self snapIconUp inspect
5038
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   928
     ImageEditor openOnClass:self andSelector:#snapIconUp"
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   929
    
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   930
    ^ Icon constantNamed:#'VariablePanel class snapIconUp'
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   931
        ifAbsentPut:[
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   932
            (Depth2Image new)
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   933
                width:62;
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   934
                height:5;
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   935
                photometric:(#palette);
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   936
                bitsPerSample:(#( 2 ));
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   937
                samplesPerPixel:(1);
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   938
                bits:(ByteArray 
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   939
                            fromPackedString:'@@@@@@@@@@@@@@@@@@@@@@@@J *B(J *B(J (B @@@@@@BEHT!!REHT!!RDHP!!@@@@@@@EPUATEPUATE@TAP@@@@@@@@@@@@@@@@@@@@@@@@@b');
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   940
                colorMapFromArray:#[ 0 0 0 68 68 68 255 255 255 ];
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   941
                mask:((ImageMask new)
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   942
                            width:62;
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   943
                            height:5;
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   944
                            bits:(ByteArray 
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   945
                                        fromPackedString:'B@@@@@@@@D@\X1#FLX1 8C9R%JT)R%G0_3FLX1#FL? @@@@@@@@@@@@a');
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   946
                            yourself);
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   947
                yourself
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   948
        ]
2482
b499b4a10907 fixed removeSubView
martin
parents: 2305
diff changeset
   949
!
2269
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   950
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   951
snapIconUpDown
5038
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   952
    <resource: #image>
2269
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   953
    "This resource specification was automatically generated
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   954
     by the ImageEditor of ST/X."
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   955
    "Do not manually edit this!! If it is corrupted,
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   956
     the ImageEditor may not be able to read the specification."
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   957
    "
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   958
     self snapIconUpDown inspect
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
   959
     ImageEditor openOnClass:self andSelector:#snapIconUpDown
5038
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   960
     Icon flushCachedIcons"
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   961
    
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   962
    ^ Icon constantNamed:#'VariablePanel class snapIconUpDown'
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   963
        ifAbsentPut:[
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   964
            (Depth2Image new)
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   965
                width:62;
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   966
                height:5;
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   967
                photometric:(#palette);
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   968
                bitsPerSample:(#( 2 ));
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   969
                samplesPerPixel:(1);
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   970
                bits:(ByteArray 
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   971
                            fromPackedString:'@@@@@@@H@@@@@@ @@@@@@@@@B J@BB J@(@HJ@(@@@@@@@!!BDD !!BDHPBBDHP@@@@@@APE@HAPE@T@ E@T@@@@@@@@@@B@@@@@@H@@@@@@@b');
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   972
                colorMapFromArray:#[ 0 0 0 68 68 68 255 255 255 ];
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   973
                mask:((ImageMask new)
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   974
                            width:62;
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   975
                            height:5;
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   976
                            bits:(ByteArray 
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   977
                                        fromPackedString:'@@@J@@B @@@PLX)#FJX1?C )R%JT)R#8_A#JLX2#FGC>@@(@@J@@H@@a');
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   978
                            yourself);
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   979
                yourself
72bac0ffb15f Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 4980
diff changeset
   980
        ]
5728
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   981
!
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   982
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   983
verticalResizeCursor
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   984
    "This resource specification was automatically generated
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   985
     by the ImageEditor of ST/X."
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   986
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   987
    "Do not manually edit this!! If it is corrupted,
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   988
     the ImageEditor may not be able to read the specification."
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   989
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   990
    "
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   991
     self verticalResizeCursor inspect
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   992
     ImageEditor openOnClass:self andSelector:#verticalResizeCursor
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   993
     Icon flushCachedIcons
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   994
    "
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   995
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   996
    <resource: #image>
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   997
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   998
    ^Icon
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
   999
        constantNamed:'VariablePanel verticalResizeCursor'
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
  1000
        ifAbsentPut:[(Depth1Image width:16 height:16) bits:(ByteArray fromPackedString:'@P@A@@$ AT@C @D@@@C??/?>@@@A@@N@AT@IH@D@@P@b')
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
  1001
            colorMapFromArray:#[255 255 255 0 0 0]
ae8ed1215e4d #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5632
diff changeset
  1002
            mask:((ImageMask width:16 height:16) bits:(ByteArray fromPackedString:'@8@[,A?0C>@G0@N@??;??/?>??8C @_@C>@_<A.0@8@b'); yourself); yourself]
2482
b499b4a10907 fixed removeSubView
martin
parents: 2305
diff changeset
  1003
! !
2269
4f1c764f1e53 icons beautified
Claus Gittinger <cg@exept.de>
parents: 2252
diff changeset
  1004
395
db172e0f3d56 renamed #style: to #handleStyle:
Claus Gittinger <cg@exept.de>
parents: 300
diff changeset
  1005
!VariablePanel methodsFor:'accessing-look'!
db172e0f3d56 renamed #style: to #handleStyle:
Claus Gittinger <cg@exept.de>
parents: 300
diff changeset
  1006
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1007
barHeight
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1008
    "return the height of the separating bar"
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1009
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1010
    ^ barHeight
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1011
!
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1012
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1013
barHeight:nPixel
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1014
    "set the height of the separating bar"
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1015
2108
b9322a905330 resize when the barWidth is changed while already visible.
Claus Gittinger <cg@exept.de>
parents: 2084
diff changeset
  1016
    |bH|
b9322a905330 resize when the barWidth is changed while already visible.
Claus Gittinger <cg@exept.de>
parents: 2084
diff changeset
  1017
5350
a2b284cfe6c3 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5261
diff changeset
  1018
    "make certain bar is visible and catchable (not smaller than 4 pixels)"
a2b284cfe6c3 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5261
diff changeset
  1019
    bH := nPixel max:4.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1020
876
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1021
    "make it even, so spacing is equally spreadable among subviews"
2108
b9322a905330 resize when the barWidth is changed while already visible.
Claus Gittinger <cg@exept.de>
parents: 2084
diff changeset
  1022
    bH odd ifTrue:[
b9322a905330 resize when the barWidth is changed while already visible.
Claus Gittinger <cg@exept.de>
parents: 2084
diff changeset
  1023
        bH := bH + 1
b9322a905330 resize when the barWidth is changed while already visible.
Claus Gittinger <cg@exept.de>
parents: 2084
diff changeset
  1024
    ].
b9322a905330 resize when the barWidth is changed while already visible.
Claus Gittinger <cg@exept.de>
parents: 2084
diff changeset
  1025
    self setBarHeight:bH
876
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1026
2108
b9322a905330 resize when the barWidth is changed while already visible.
Claus Gittinger <cg@exept.de>
parents: 2084
diff changeset
  1027
    "Modified: / 28.4.1997 / 14:30:33 / dq"
b9322a905330 resize when the barWidth is changed while already visible.
Claus Gittinger <cg@exept.de>
parents: 2084
diff changeset
  1028
    "Modified: / 30.1.2000 / 22:31:32 / cg"
876
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1029
!
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1030
2623
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  1031
barLevel:level
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  1032
    "set the 3D level of the separating bar"
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  1033
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  1034
    barLevel ~~ level ifTrue:[
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  1035
        barLevel := level.
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  1036
        self redrawIfShown.    
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  1037
    ]
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  1038
!
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  1039
876
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1040
handleImage:aBitmapOrImage
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1041
    "define the handles image"
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1042
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1043
    shadowForm := aBitmapOrImage.
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1044
    lightForm := nil.
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1045
    self computeBarHeight.
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1046
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1047
    "Created: 7.11.1996 / 20:21:10 / cg"
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1048
    "Modified: 7.11.1996 / 20:27:22 / cg"
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1049
!
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1050
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1051
handleLabels:aCollectionOfLabels
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1052
    "define special handle labels - typically a collection of
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1053
     bitmap images. Notice, that the first handle is not
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1054
     drawn, that is, the first element if the argument is useless."
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1055
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1056
    orientation == #horizontal ifTrue:[
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1057
        self error:'not allowed for horizontal panels'
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1058
    ].
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1059
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1060
    handleLabels := aCollectionOfLabels.
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1061
    self computeBarHeight.
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1062
    self resizeSubviews.
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1063
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1064
    "
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1065
     |top panel v1 v2|
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1066
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1067
     top := StandardSystemView new.
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1068
     panel := VariableVerticalPanel origin:0.0@0.0 corner:1.0@1.0 in:top.
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1069
     panel add:(EditTextView origin:0.0@0.0 corner:1.0@0.5).
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1070
     panel add:(EditTextView origin:0.0@0.5 corner:1.0@1.0).
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1071
     panel handleStyle:nil.
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1072
     panel handleLabels:#('foo' 'bar').
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1073
     top open
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1074
    "
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1075
!
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1076
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1077
handleLevel:aNumber
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1078
    "define the 3D level of the handle (only with some styles).
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1079
     Normally, this is defined via styleSheet files, but this entry allows
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1080
     individual views to be manipulated."
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1081
2244
9366bda63514 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2243
diff changeset
  1082
    handleLevel ~~ aNumber ifTrue:[
9366bda63514 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2243
diff changeset
  1083
        handleLevel := aNumber.
2623
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  1084
        self redrawIfShown.    
2242
1aea02d32c96 snapHandlePosition is same as handlePosition
Claus Gittinger <cg@exept.de>
parents: 2241
diff changeset
  1085
    ]
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1086
!
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1087
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1088
handlePosition
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1089
    "return the position of the handle"
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1090
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1091
    ^ handlePosition
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1092
!
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1093
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1094
handlePosition:aSymbol
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1095
    "define the position of the handle; the argument aSymbol
2228
d74b093fe48d snapHandlePosition adjustable
Claus Gittinger <cg@exept.de>
parents: 2179
diff changeset
  1096
     may be one of #left, #right or #center.
d74b093fe48d snapHandlePosition adjustable
Claus Gittinger <cg@exept.de>
parents: 2179
diff changeset
  1097
     If never set by the program, the position is controlled by the styleSheet."
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1098
2244
9366bda63514 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2243
diff changeset
  1099
    handlePosition ~~ aSymbol ifTrue:[
9366bda63514 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2243
diff changeset
  1100
        handlePosition := aSymbol ? DefaultHandlePosition.
2623
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  1101
        self redrawIfShown.    
2242
1aea02d32c96 snapHandlePosition is same as handlePosition
Claus Gittinger <cg@exept.de>
parents: 2241
diff changeset
  1102
    ]
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1103
!
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1104
876
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1105
handleShadowImage:shadowImage lightImage:lightImage
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1106
    "define the handles image; both shadow and light parts"
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1107
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1108
    shadowForm := shadowImage.
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1109
    lightForm := lightImage.
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1110
    self computeBarHeight.
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1111
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1112
    "Created: 7.11.1996 / 20:21:51 / cg"
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1113
    "Modified: 7.11.1996 / 20:27:26 / cg"
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1114
!
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1115
395
db172e0f3d56 renamed #style: to #handleStyle:
Claus Gittinger <cg@exept.de>
parents: 300
diff changeset
  1116
handleStyle:styleSymbol
db172e0f3d56 renamed #style: to #handleStyle:
Claus Gittinger <cg@exept.de>
parents: 300
diff changeset
  1117
    "define the style of the handle;
db172e0f3d56 renamed #style: to #handleStyle:
Claus Gittinger <cg@exept.de>
parents: 300
diff changeset
  1118
     styleSymbol may be #motif to draw a little knob or
db172e0f3d56 renamed #style: to #handleStyle:
Claus Gittinger <cg@exept.de>
parents: 300
diff changeset
  1119
     anything else to draw scrollBars handleForm.
db172e0f3d56 renamed #style: to #handleStyle:
Claus Gittinger <cg@exept.de>
parents: 300
diff changeset
  1120
     Normally, this is defined via styleSheet files, but this entry allows
db172e0f3d56 renamed #style: to #handleStyle:
Claus Gittinger <cg@exept.de>
parents: 300
diff changeset
  1121
     individual views to be manipulated."
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1122
395
db172e0f3d56 renamed #style: to #handleStyle:
Claus Gittinger <cg@exept.de>
parents: 300
diff changeset
  1123
    (styleSymbol ~~ handleStyle) ifTrue:[
722
3f297a438fec use #invalidate instead of #redraw
Claus Gittinger <cg@exept.de>
parents: 593
diff changeset
  1124
        handleStyle := styleSymbol.
3f297a438fec use #invalidate instead of #redraw
Claus Gittinger <cg@exept.de>
parents: 593
diff changeset
  1125
        handleStyle == #next ifTrue:[
5632
bacbc9c526b2 device access
Claus Gittinger <cg@exept.de>
parents: 5563
diff changeset
  1126
            shadowForm := self class shadowFormOn:device.
bacbc9c526b2 device access
Claus Gittinger <cg@exept.de>
parents: 5563
diff changeset
  1127
            lightForm := self class lightFormOn:device.
722
3f297a438fec use #invalidate instead of #redraw
Claus Gittinger <cg@exept.de>
parents: 593
diff changeset
  1128
        ] ifFalse:[
3f297a438fec use #invalidate instead of #redraw
Claus Gittinger <cg@exept.de>
parents: 593
diff changeset
  1129
            shadowForm := lightForm := nil
3f297a438fec use #invalidate instead of #redraw
Claus Gittinger <cg@exept.de>
parents: 593
diff changeset
  1130
        ].
395
db172e0f3d56 renamed #style: to #handleStyle:
Claus Gittinger <cg@exept.de>
parents: 300
diff changeset
  1131
722
3f297a438fec use #invalidate instead of #redraw
Claus Gittinger <cg@exept.de>
parents: 593
diff changeset
  1132
        shadowForm notNil ifTrue:[
3f297a438fec use #invalidate instead of #redraw
Claus Gittinger <cg@exept.de>
parents: 593
diff changeset
  1133
            (self is3D and:[handleStyle ~~ #motif]) ifTrue:[
3f297a438fec use #invalidate instead of #redraw
Claus Gittinger <cg@exept.de>
parents: 593
diff changeset
  1134
                self barHeight:(shadowForm height + 2).
3f297a438fec use #invalidate instead of #redraw
Claus Gittinger <cg@exept.de>
parents: 593
diff changeset
  1135
                barWidth := shadowForm width
3f297a438fec use #invalidate instead of #redraw
Claus Gittinger <cg@exept.de>
parents: 593
diff changeset
  1136
            ]
3f297a438fec use #invalidate instead of #redraw
Claus Gittinger <cg@exept.de>
parents: 593
diff changeset
  1137
        ].
3f297a438fec use #invalidate instead of #redraw
Claus Gittinger <cg@exept.de>
parents: 593
diff changeset
  1138
        shown ifTrue:[
3f297a438fec use #invalidate instead of #redraw
Claus Gittinger <cg@exept.de>
parents: 593
diff changeset
  1139
            self resizeSubviews.
2623
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  1140
            self redrawIfShown.    
722
3f297a438fec use #invalidate instead of #redraw
Claus Gittinger <cg@exept.de>
parents: 593
diff changeset
  1141
        ]
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1142
    ]
395
db172e0f3d56 renamed #style: to #handleStyle:
Claus Gittinger <cg@exept.de>
parents: 300
diff changeset
  1143
db172e0f3d56 renamed #style: to #handleStyle:
Claus Gittinger <cg@exept.de>
parents: 300
diff changeset
  1144
    "Created: 24.2.1996 / 19:04:07 / cg"
722
3f297a438fec use #invalidate instead of #redraw
Claus Gittinger <cg@exept.de>
parents: 593
diff changeset
  1145
    "Modified: 29.5.1996 / 16:22:24 / cg"
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1146
!
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1147
4433
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1148
orientation
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1149
    "return my orientation; either #horizontal or #vertical"
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1150
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1151
    ^ orientation
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1152
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1153
    "Modified: 6.3.1996 / 18:08:45 / cg"
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1154
!
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1155
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1156
orientation:aSymbol
5473
5723b596e1cf #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 5471
diff changeset
  1157
    "change my orientation; aSymbol must be one of #horizontal or #vertical.
4433
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1158
     Changing implies a resize of my subViews."
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1159
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1160
    aSymbol ~~ orientation ifTrue:[
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1161
        orientation := aSymbol.
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1162
        self initCursor.
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1163
        self anyNonRelativeSubviews ifTrue:[
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1164
            self setupSubviews
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1165
        ].
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1166
        shown ifTrue:[
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1167
            self cursor:cursor.
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1168
            self sizeChanged:nil.
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1169
            self redrawIfShown.
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1170
        ]
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1171
    ]
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1172
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1173
    "Modified: 29.5.1996 / 16:22:35 / cg"
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1174
!
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1175
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1176
relativeCorners
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1177
    "the returned collection gives the corner-fractional value for each component;
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1178
     i.e. for a 20-40-40 look, it would be #(0.2 0.6 1.0)"
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1179
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1180
    ^ self subViews 
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1181
        collect:[:eachView | 
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1182
                self isHorizontal ifTrue:[
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1183
                    eachView relativeCorner x
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1184
                ] ifFalse:[
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1185
                    eachView relativeCorner y
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1186
                ]
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1187
        ]
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1188
!
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1189
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1190
relativeCorners:aCollectionOfRelativeCornerPositions
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1191
    "the argument gives the corner-fractional value for each component;
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1192
     i.e. for a 20-40-40 look, it would be #(0.2 0.6 1.0)"
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1193
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1194
    |pos|
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1195
5563
Claus Gittinger <cg@exept.de>
parents: 5535
diff changeset
  1196
    aCollectionOfRelativeCornerPositions size == self subViews size ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 5535
diff changeset
  1197
        'VariablePanel [info]: size mismatch in relativeCorners' infoPrintCR.
Claus Gittinger <cg@exept.de>
parents: 5535
diff changeset
  1198
        ^ self 
Claus Gittinger <cg@exept.de>
parents: 5535
diff changeset
  1199
    ].
4433
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1200
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1201
    pos := 0.0.
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1202
    self subViews with:aCollectionOfRelativeCornerPositions 
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1203
        do:[:eachView :eachCorner |
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1204
            self isHorizontal ifTrue:[
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1205
                eachView origin:(pos @ 0.0) corner:(eachCorner @ 1.0)
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1206
            ] ifFalse:[
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1207
                eachView origin:(0.0 @ pos) corner:(1.0 @ eachCorner)
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1208
            ].
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1209
            pos := eachCorner
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1210
        ].
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1211
    self realized ifTrue:[
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1212
        self resizeSubviews
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1213
    ].
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1214
!
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1215
1948
e92d1005d6a3 direct access to barHeight
Claus Gittinger <cg@exept.de>
parents: 1894
diff changeset
  1216
setBarHeight:nPixel
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1217
    "check whether snap matches to extent of bar otherwise disable snap"
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1218
5473
5723b596e1cf #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 5471
diff changeset
  1219
    |newBarHeight|
5723b596e1cf #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 5471
diff changeset
  1220
    
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1221
    snapAdornment notNil ifTrue:[
5473
5723b596e1cf #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 5471
diff changeset
  1222
        newBarHeight := nPixel max:(snapAdornment height ? 0)
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1223
    ] ifFalse:[
5473
5723b596e1cf #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 5471
diff changeset
  1224
        newBarHeight := nPixel max:0
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1225
    ].
5473
5723b596e1cf #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 5471
diff changeset
  1226
    newBarHeight := newBarHeight max:(styleSheet at:#'variablePanel.minBarHeight' default:newBarHeight).
5723b596e1cf #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 5471
diff changeset
  1227
    newBarHeight ~= barHeight ifTrue:[
5723b596e1cf #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 5471
diff changeset
  1228
        barHeight := newBarHeight.
5723b596e1cf #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 5471
diff changeset
  1229
        realized ifTrue:[
5723b596e1cf #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 5471
diff changeset
  1230
            self resizeSubviews
5723b596e1cf #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 5471
diff changeset
  1231
        ]
2108
b9322a905330 resize when the barWidth is changed while already visible.
Claus Gittinger <cg@exept.de>
parents: 2084
diff changeset
  1232
    ]
1948
e92d1005d6a3 direct access to barHeight
Claus Gittinger <cg@exept.de>
parents: 1894
diff changeset
  1233
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1234
    "Modified: / 31-10-2010 / 13:00:06 / cg"
1948
e92d1005d6a3 direct access to barHeight
Claus Gittinger <cg@exept.de>
parents: 1894
diff changeset
  1235
!
e92d1005d6a3 direct access to barHeight
Claus Gittinger <cg@exept.de>
parents: 1894
diff changeset
  1236
2114
54afdc74da11 access to showHandle flag
Claus Gittinger <cg@exept.de>
parents: 2108
diff changeset
  1237
showHandle
4206
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1238
    "handle-drawing enabled/disable; a Boolean"
2114
54afdc74da11 access to showHandle flag
Claus Gittinger <cg@exept.de>
parents: 2108
diff changeset
  1239
54afdc74da11 access to showHandle flag
Claus Gittinger <cg@exept.de>
parents: 2108
diff changeset
  1240
    ^ showHandle
4206
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1241
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1242
    "Modified: / 19-12-2010 / 09:28:31 / cg"
2114
54afdc74da11 access to showHandle flag
Claus Gittinger <cg@exept.de>
parents: 2108
diff changeset
  1243
!
54afdc74da11 access to showHandle flag
Claus Gittinger <cg@exept.de>
parents: 2108
diff changeset
  1244
54afdc74da11 access to showHandle flag
Claus Gittinger <cg@exept.de>
parents: 2108
diff changeset
  1245
showHandle:aBoolean
54afdc74da11 access to showHandle flag
Claus Gittinger <cg@exept.de>
parents: 2108
diff changeset
  1246
    "enabled/disable the handle-drawing"
54afdc74da11 access to showHandle flag
Claus Gittinger <cg@exept.de>
parents: 2108
diff changeset
  1247
2244
9366bda63514 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2243
diff changeset
  1248
    showHandle ~~ aBoolean ifTrue:[
9366bda63514 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2243
diff changeset
  1249
        showHandle := aBoolean ? DefaultShowHandle.
4206
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1250
        self invalidate. "/ redrawIfShown
2242
1aea02d32c96 snapHandlePosition is same as handlePosition
Claus Gittinger <cg@exept.de>
parents: 2241
diff changeset
  1251
    ]
4206
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1252
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1253
    "Modified: / 19-12-2010 / 09:30:49 / cg"
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1254
!
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1255
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1256
showHandleWhenEntered
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1257
    "return aBoolean"
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1258
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1259
    ^ showHandleWhenEntered
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1260
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1261
    "Created: / 19-12-2010 / 09:27:40 / cg"
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1262
!
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1263
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1264
showHandleWhenEntered:aBoolean
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1265
    "enabled/disable the handle-drawing"
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1266
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1267
    showHandleWhenEntered ~~ aBoolean ifTrue:[
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1268
        showHandleWhenEntered := aBoolean ? DefaultShowHandleWhenEntered.
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1269
        self invalidate. "/ redrawIfShown
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1270
    ]
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1271
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1272
    "Created: / 19-12-2010 / 09:28:04 / cg"
2114
54afdc74da11 access to showHandle flag
Claus Gittinger <cg@exept.de>
parents: 2108
diff changeset
  1273
!
54afdc74da11 access to showHandle flag
Claus Gittinger <cg@exept.de>
parents: 2108
diff changeset
  1274
2228
d74b093fe48d snapHandlePosition adjustable
Claus Gittinger <cg@exept.de>
parents: 2179
diff changeset
  1275
snapHandlePosition
d74b093fe48d snapHandlePosition adjustable
Claus Gittinger <cg@exept.de>
parents: 2179
diff changeset
  1276
    "return the position of the snap-handle"
d74b093fe48d snapHandlePosition adjustable
Claus Gittinger <cg@exept.de>
parents: 2179
diff changeset
  1277
2242
1aea02d32c96 snapHandlePosition is same as handlePosition
Claus Gittinger <cg@exept.de>
parents: 2241
diff changeset
  1278
    ^ self handlePosition. "/ ^ snapHandlePosition
2228
d74b093fe48d snapHandlePosition adjustable
Claus Gittinger <cg@exept.de>
parents: 2179
diff changeset
  1279
!
d74b093fe48d snapHandlePosition adjustable
Claus Gittinger <cg@exept.de>
parents: 2179
diff changeset
  1280
d74b093fe48d snapHandlePosition adjustable
Claus Gittinger <cg@exept.de>
parents: 2179
diff changeset
  1281
snapHandlePosition:aSymbol
d74b093fe48d snapHandlePosition adjustable
Claus Gittinger <cg@exept.de>
parents: 2179
diff changeset
  1282
    "define the position of the snap-handle; the argument aSymbol
d74b093fe48d snapHandlePosition adjustable
Claus Gittinger <cg@exept.de>
parents: 2179
diff changeset
  1283
     may be one of #left, #right or #center.
d74b093fe48d snapHandlePosition adjustable
Claus Gittinger <cg@exept.de>
parents: 2179
diff changeset
  1284
     If never set by the program, the position is controlled by the styleSheet."
d74b093fe48d snapHandlePosition adjustable
Claus Gittinger <cg@exept.de>
parents: 2179
diff changeset
  1285
2242
1aea02d32c96 snapHandlePosition is same as handlePosition
Claus Gittinger <cg@exept.de>
parents: 2241
diff changeset
  1286
    self handlePosition:aSymbol.
1aea02d32c96 snapHandlePosition is same as handlePosition
Claus Gittinger <cg@exept.de>
parents: 2241
diff changeset
  1287
1aea02d32c96 snapHandlePosition is same as handlePosition
Claus Gittinger <cg@exept.de>
parents: 2241
diff changeset
  1288
"/    snapHandlePosition := aSymbol.
1aea02d32c96 snapHandlePosition is same as handlePosition
Claus Gittinger <cg@exept.de>
parents: 2241
diff changeset
  1289
"/    realized ifTrue:[
1aea02d32c96 snapHandlePosition is same as handlePosition
Claus Gittinger <cg@exept.de>
parents: 2241
diff changeset
  1290
"/        self invalidate
1aea02d32c96 snapHandlePosition is same as handlePosition
Claus Gittinger <cg@exept.de>
parents: 2241
diff changeset
  1291
"/    ]
2228
d74b093fe48d snapHandlePosition adjustable
Claus Gittinger <cg@exept.de>
parents: 2179
diff changeset
  1292
!
d74b093fe48d snapHandlePosition adjustable
Claus Gittinger <cg@exept.de>
parents: 2179
diff changeset
  1293
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1294
snapMode
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1295
    "allowed modes are:
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1296
        nil             no snap
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1297
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1298
        #max            on press the view is increased to bottom(vertical) or right(horizontal)
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1299
        #min            on press the view is decreased to top   (vertical) or left (horizontal)
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1300
        #maxMin         on press the view is increased or decreased dependent on its current extent
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1301
        #minMax         on press the view is increased or decreased dependent on its current extent
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1302
    "
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1303
    snapAdornment notNil ifTrue:[
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1304
        ^ snapAdornment mode
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1305
    ].
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1306
    ^ nil
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1307
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1308
    "Modified: / 31-10-2010 / 13:00:16 / cg"
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1309
!
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1310
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1311
snapMode:aMode
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1312
    "allowed modes are:
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1313
        nil             no snap
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1314
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1315
        #max            on press the view is increased to bottom(vertical) or right(horizontal)
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1316
        #min            on press the view is decreased to top   (vertical) or left (horizontal)
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1317
        #maxMin         on press the view is increased or decreased dependent on its current extent
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1318
        #minMax         on press the view is increased or decreased dependent on its current extent
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1319
    "
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1320
    |oldHeight oldMode|
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1321
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1322
    aMode notNil ifTrue:[
2236
cd77d04c9a0a snapMode: #both
Claus Gittinger <cg@exept.de>
parents: 2228
diff changeset
  1323
        ( #( max min maxMin minMax both) includes:aMode) ifFalse:[
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1324
            ^ self error:('unknown snapMode: ', aMode printString).
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1325
        ]
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1326
    ].
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1327
    (oldMode := self snapMode) == aMode ifTrue:[^ self].
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1328
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1329
    (snapAdornment notNil and:[aMode notNil]) ifTrue:[
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1330
        "must only redraw"
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1331
        snapAdornment mode:aMode
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1332
    ] ifFalse:[
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1333
        "must recompute barHeight and redraw"
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1334
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1335
        aMode isNil ifTrue:[
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1336
            snapAdornment := nil
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1337
        ] ifFalse:[
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1338
            self initSnapAdornment.
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1339
            snapAdornment mode:aMode.
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1340
        ].
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1341
        oldHeight := barHeight.
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1342
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1343
        self computeBarHeight.
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1344
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1345
        oldHeight ~~ barHeight ifTrue:[
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1346
            "must recompute subViews"
5473
5723b596e1cf #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 5471
diff changeset
  1347
"/            realized ifFalse:[
5723b596e1cf #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 5471
diff changeset
  1348
"/                needResize := true.
5723b596e1cf #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 5471
diff changeset
  1349
"/                ^ self.
5723b596e1cf #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 5471
diff changeset
  1350
"/            ].
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1351
            self setupSubviews.
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1352
            self resizeSubviews.
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1353
        ]
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1354
    ].
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1355
    self redrawIfShown.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1356
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1357
    "Modified: / 31-10-2010 / 13:00:39 / cg"
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1358
!
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1359
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1360
style:styleSymbol
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1361
    "define the style of the handle;
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1362
     styleSymbol may be #motif to draw a little knob or
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1363
     anything else to draw scrollBars handleForm.
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1364
     Normally, this is defined via styleSheet files, but this entry allows
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1365
     individual views to be manipulated."
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1366
395
db172e0f3d56 renamed #style: to #handleStyle:
Claus Gittinger <cg@exept.de>
parents: 300
diff changeset
  1367
    self handleStyle:styleSymbol
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1368
395
db172e0f3d56 renamed #style: to #handleStyle:
Claus Gittinger <cg@exept.de>
parents: 300
diff changeset
  1369
    "Modified: 24.2.1996 / 19:04:19 / cg"
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1370
! !
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1371
2288
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  1372
!VariablePanel methodsFor:'adding & removing components'!
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  1373
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  1374
addSubView:aView
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  1375
    "a view is added; adjust other subviews sizes"
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  1376
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  1377
    super addSubView:aView.
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  1378
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  1379
    realized ifTrue:[
2482
b499b4a10907 fixed removeSubView
martin
parents: 2305
diff changeset
  1380
        self setupSubviews.
2288
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  1381
        self resizeSubviews.
2483
94560abb05ce fixed removeSubView
martin
parents: 2482
diff changeset
  1382
        aView beVisible.
2288
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  1383
    ]
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  1384
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  1385
    "Created: 17.1.1996 / 22:41:00 / cg"
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  1386
    "Modified: 24.2.1996 / 19:05:05 / cg"
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  1387
!
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  1388
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  1389
removeSubView:aView
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  1390
    "a view is removed; adjust other subviews sizes"
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  1391
2483
94560abb05ce fixed removeSubView
martin
parents: 2482
diff changeset
  1392
    aView beInvisible.
2288
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  1393
    super removeSubView:aView.
2483
94560abb05ce fixed removeSubView
martin
parents: 2482
diff changeset
  1394
    shown ifTrue:[             
94560abb05ce fixed removeSubView
martin
parents: 2482
diff changeset
  1395
        realized 
94560abb05ce fixed removeSubView
martin
parents: 2482
diff changeset
  1396
        "/ (superView isNil or:[superView shown]) 
94560abb05ce fixed removeSubView
martin
parents: 2482
diff changeset
  1397
        ifTrue:[
5535
Claus Gittinger <cg@exept.de>
parents: 5476
diff changeset
  1398
            self isBeingDestroyed ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 5476
diff changeset
  1399
                self setupSubviews.
Claus Gittinger <cg@exept.de>
parents: 5476
diff changeset
  1400
                self resizeSubviews.
Claus Gittinger <cg@exept.de>
parents: 5476
diff changeset
  1401
            ]
2288
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  1402
        ]
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  1403
    ]
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  1404
! !
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  1405
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1406
!VariablePanel methodsFor:'drawing'!
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1407
5261
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  1408
clearAndInvalidate
5997
3bfbd15008fe #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 5952
diff changeset
  1409
    realized ifTrue:[ self clear ].
5261
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  1410
    self invalidate.
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  1411
!
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  1412
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1413
drawHandle:hIndex atX:hx y:hy
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1414
    "draw a single handle at hx/hy"
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1415
1628
d5065006e796 fixed / beautified #full handleStyle (used with win95 style)
Claus Gittinger <cg@exept.de>
parents: 1551
diff changeset
  1416
    |h w x y m xm ym lbl maxKnob
1096
e17800280f82 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1043
diff changeset
  1417
     mar           "{ Class: SmallInteger }"
e17800280f82 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1043
diff changeset
  1418
     barWidthInt   "{ Class: SmallInteger }"
e17800280f82 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1043
diff changeset
  1419
     barHeightInt  "{ Class: SmallInteger }" |
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1420
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1421
    ((handleStyle isNil or:[handleStyle == #none])
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1422
    and:[handleLabels isNil]) ifTrue:[^ self].
396
973d4a9fa32c setting handleStyle to nil disables handleDrawing
Claus Gittinger <cg@exept.de>
parents: 395
diff changeset
  1423
1096
e17800280f82 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1043
diff changeset
  1424
    mar := margin.
e17800280f82 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1043
diff changeset
  1425
    barHeightInt := barHeight.
e17800280f82 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1043
diff changeset
  1426
    barWidthInt := barWidth.
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1427
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1428
    shadowForm notNil ifTrue:[
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1429
        h := shadowForm height.
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1430
        w := shadowForm width .
1096
e17800280f82 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1043
diff changeset
  1431
        maxKnob := h min:barHeightInt.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1432
    ] ifFalse:[
1096
e17800280f82 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1043
diff changeset
  1433
        maxKnob := knobHeight min: barHeightInt.
876
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1434
        maxKnob := maxKnob max:4.
1628
d5065006e796 fixed / beautified #full handleStyle (used with win95 style)
Claus Gittinger <cg@exept.de>
parents: 1551
diff changeset
  1435
        handleStyle == #full ifTrue:[
d5065006e796 fixed / beautified #full handleStyle (used with win95 style)
Claus Gittinger <cg@exept.de>
parents: 1551
diff changeset
  1436
            w := h := maxKnob
d5065006e796 fixed / beautified #full handleStyle (used with win95 style)
Claus Gittinger <cg@exept.de>
parents: 1551
diff changeset
  1437
        ] ifFalse:[
d5065006e796 fixed / beautified #full handleStyle (used with win95 style)
Claus Gittinger <cg@exept.de>
parents: 1551
diff changeset
  1438
            w := h := maxKnob - 4.
d5065006e796 fixed / beautified #full handleStyle (used with win95 style)
Claus Gittinger <cg@exept.de>
parents: 1551
diff changeset
  1439
        ]
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1440
    ].
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1441
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1442
    gc paint:viewBackground.
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1443
    gc lineStyle:#solid.
1131
98922cb07e5b allow handleStyle of #none
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
  1444
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1445
    orientation == #vertical ifTrue:[
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1446
        gc fillRectangleX:mar y:hy width:(width - mar - mar) height:barHeightInt.
2623
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  1447
        (handleStyle notNil
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  1448
        and:[handleStyle ~~ #none]) ifTrue:[
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1449
            (handleStyle ~~ #normal 
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1450
            and:[handleStyle ~~ #mswindows]) ifTrue:[
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1451
                m := (maxKnob - h) // 2.
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1452
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1453
                shadowForm isNil ifTrue:[
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1454
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1455
                    y := hy + (barHeightInt // 2).   "/ center of the bar
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1456
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1457
                    separatingLine ifTrue:[
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1458
                        gc paint:shadowColor.
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1459
                        gc displayLineFromX:mar y:y toX:(width - mar) y:y.
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1460
                        y := y + 1.
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1461
                        gc paint:lightColor.
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1462
                        gc displayLineFromX:mar y:y toX:(width - mar) y:y.
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1463
                        gc paint:viewBackground.
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1464
                    ].
876
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1465
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1466
                    gc fillRectangleX:(hx - barWidthInt) y:hy 
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1467
                       width:(barWidthInt + barWidthInt) height:h.
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1468
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1469
                    handleStyle == #line ifTrue:[
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1470
                        gc paint:handleColor.
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1471
                        gc displayLineFromX:hx - barWidthInt y:y toX:hx + barWidthInt y:y
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1472
                    ] ifFalse:[
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1473
                        y := hy.   
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1474
                        handleStyle == #st80 ifTrue:[
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1475
                            y := y - 1
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1476
                        ].
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1477
                        ym := y + m.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1478
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1479
                        handleStyle == #full ifTrue:[
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1480
                            handleLevel ~~ 0 ifTrue:[
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1481
                                self 
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1482
                                    drawEdgesForX:0 "/ -(handleLevel abs)
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1483
                                    y:ym "/-1
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1484
                                    width:width "/+(handleLevel+handleLevel)abs
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1485
                                    height:h-2 
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1486
                                    level:handleLevel
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1487
                                    shadow:shadowColor 
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1488
                                    light:lightColor
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1489
                                    halfShadow:nil 
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1490
                                    halfLight:nil 
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1491
                                    style:nil 
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1492
                            ]
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1493
                        ] ifFalse:[
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1494
                            handleLevel ~~ 0 ifTrue:[
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1495
                                self drawEdgesForX:(hx - barWidthInt)
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1496
                                                 y:ym
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1497
                                             width:(barWidthInt + barWidthInt)
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1498
                                            height:h 
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1499
                                             level:handleLevel.
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1500
                            ].
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1501
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1502
                            handleStyle == #iris ifTrue:[
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1503
                                gc paint:handleColor.
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1504
                                gc fillDeviceRectangleX:(hx - barWidthInt + 2) y:(ym + 2)
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1505
                                   width:(barWidthInt + barWidthInt - 4) height:h - 4
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1506
                            ]
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1507
                        ]
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1508
                    ].
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1509
                ] ifFalse:[
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1510
                    y := hy.
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1511
                    (shadowForm notNil or:[lightForm notNil]) ifTrue:[
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1512
                        self drawHandleFormAtX:hx y:(y + m)
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1513
                    ]
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1514
                ].
1096
e17800280f82 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1043
diff changeset
  1515
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1516
                handleStyle == #st80 ifTrue:[
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1517
                    y := hy - 1.
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1518
                    gc paint:lightColor.
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1519
                    gc displayLineFromX:mar y:y toX:(width - mar - mar - 1) y:y.
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1520
                    gc displayLineFromX:0 y:hy toX:0 y:(hy + knobHeight - 1).
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1521
                    y := hy + knobHeight - 2.
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1522
                    gc paint:shadowColor.
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1523
                    gc displayLineFromX:mar y:y toX:(width - mar) y:y.
5952
cee3905f1661 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 5821
diff changeset
  1524
                        "uncomment the -1 if you don't like the notch at the right end"
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1525
                        "                            VVV"
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1526
                    gc displayLineFromX:width-1 y:hy" "-1" " toX:width-1 y:(hy + knobHeight - 1 - 1).
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1527
                ].
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1528
            ] ifFalse:[
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1529
                y := hy + barHeightInt - 1.
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1530
                gc paint:handleColor.
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1531
                separatingLine ifTrue:[
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1532
                    gc displayLineFromX:0 y:hy+1 toX:width y:hy+1.
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1533
                    gc displayLineFromX:0 y:y toX:width y:y.
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1534
                ].
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1535
                gc fillRectangleX:hx y:hy width:barWidthInt height:barHeightInt.
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1536
            ].
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1537
        ].
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1538
        lbl := self handleLabelAt:hIndex.
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1539
        lbl notNil ifTrue:[
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1540
            hIndex ~~ 1 ifTrue:[
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1541
                gc paint:self blackColor.
2734
ba7f56186e88 correct use of ascentOn: for display
Claus Gittinger <cg@exept.de>
parents: 2650
diff changeset
  1542
                lbl displayOn:self x:mar y:hy + (lbl ascentOn:self)
ba7f56186e88 correct use of ascentOn: for display
Claus Gittinger <cg@exept.de>
parents: 2650
diff changeset
  1543
"/                lbl isImageOrForm ifTrue:[
ba7f56186e88 correct use of ascentOn: for display
Claus Gittinger <cg@exept.de>
parents: 2650
diff changeset
  1544
"/                    lbl displayOn:self x:mar y:hy
ba7f56186e88 correct use of ascentOn: for display
Claus Gittinger <cg@exept.de>
parents: 2650
diff changeset
  1545
"/                ] ifFalse:[
ba7f56186e88 correct use of ascentOn: for display
Claus Gittinger <cg@exept.de>
parents: 2650
diff changeset
  1546
"/                    lbl displayOn:self x:mar y:hy + font ascent + 1
ba7f56186e88 correct use of ascentOn: for display
Claus Gittinger <cg@exept.de>
parents: 2650
diff changeset
  1547
"/                ]
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1548
            ]
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1549
        ].
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1550
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1551
    ] ifFalse:[
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1552
        gc fillRectangleX:hx y:mar width:barHeightInt height:(height - mar - mar).
876
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1553
2623
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  1554
        (handleStyle notNil
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  1555
        and:[handleStyle ~~ #none]) ifTrue:[
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1556
            (handleStyle ~~ #normal
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1557
            and:[handleStyle ~~ #mswindows]) ifTrue:[
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1558
                "/ m := (barHeightInt - w) // 2.
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1559
                m := (maxKnob - w) // 2.
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1560
                shadowForm isNil ifTrue:[
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1561
                    x := hx + (barHeightInt // 2).
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1562
                    separatingLine ifTrue:[
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1563
                        gc paint:shadowColor.
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1564
                        gc displayLineFromX:x y:mar toX:x y:(height - mar).
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1565
                        x := x + 1.
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1566
                        gc paint:lightColor.
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1567
                        gc displayLineFromX:x y:mar toX:x y:(height - mar).
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1568
                        gc paint:viewBackground.
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1569
                    ].
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1570
                    gc fillRectangleX:hx y:(hy - barWidthInt) 
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1571
                       width:w height:(barWidthInt + barWidthInt).
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1572
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1573
                    handleStyle == #line ifTrue:[
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1574
                        gc paint:handleColor.
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1575
                        gc displayLineFromX:x y:hy - barWidthInt toX:x y:hy + barWidthInt.
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1576
                    ] ifFalse:[
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1577
                        x := hx.
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1578
                        handleStyle == #st80 ifTrue:[
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1579
                            x := x - 1.
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1580
                        ].
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1581
                        xm := x + m.
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1582
                        handleStyle == #full ifTrue:[
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1583
                            handleLevel ~~ 0 ifTrue:[
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1584
                                self 
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1585
                                    drawEdgesForX:xm "/-1
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1586
                                    y:0 "/ -handleLevel
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1587
                                    width:w-2
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1588
                                    height:height "/ +handleLevel+handleLevel 
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1589
                                    level:handleLevel
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1590
                                    shadow:shadowColor 
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1591
                                    light:lightColor
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1592
                                    halfShadow:nil 
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1593
                                    halfLight:nil 
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1594
                                    style:nil
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1595
                            ]
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1596
                        ] ifFalse:[
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1597
                            handleLevel ~~ 0 ifTrue:[
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1598
                                self drawEdgesForX:xm y:(hy - barWidthInt)
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1599
                                     width:w height:(barWidthInt + barWidthInt)
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1600
                                     level:handleLevel.
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1601
                            ].
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1602
                            handleStyle == #iris ifTrue:[
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1603
                                gc paint:handleColor.
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1604
                                gc fillDeviceRectangleX:(xm + 2) y:(hy - barWidthInt + 2)
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1605
                                   width:w - 4 height:(barWidthInt + barWidthInt - 4)
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1606
                            ].
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1607
                        ].
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1608
                    ]
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1609
                ] ifFalse:[
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1610
                    x := hx.
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1611
                    (shadowForm notNil or:[lightForm notNil]) ifTrue:[
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1612
                        self drawHandleFormAtX:(x + m) y:hy
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1613
                    ]
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1614
                ].
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1615
                handleStyle == #st80 ifTrue:[
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1616
                    x := hx - 1.
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1617
                    gc paint:lightColor.
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1618
                    gc displayLineFromX:x y:mar toX:x y:(height - mar).
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1619
                    gc displayLineFromX:hx y:0 toX:(hx + barHeightInt - 1) y:0.
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1620
                    x := hx + barHeightInt - 2.
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1621
                    gc paint:shadowColor.
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1622
                    gc displayLineFromX:x y:mar toX:x y:(height - mar).
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1623
                        "uncomment the -1 if you dont like the notch at the bottom end"
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1624
                        "                   VVV"
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1625
                    gc displayLineFromX:hx" "-1" " y:height-1 toX:(hx + barHeightInt - 1) y:height-1.
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1626
                ].
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1627
            ] ifFalse:[
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1628
                x := hx + barHeightInt - 1.
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1629
                gc paint:handleColor.
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1630
                separatingLine ifTrue:[
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1631
                    gc displayLineFromX:hx+1 y:0 toX:hx+1 y:height.
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1632
                    gc displayLineFromX:x y:0 toX:x y:height.
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1633
                ].
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1634
                gc fillRectangleX:hx y:hy width:barHeightInt height:barWidthInt
1981
15a646f9e4fb error: vs. error:mayProceed:
Claus Gittinger <cg@exept.de>
parents: 1948
diff changeset
  1635
            ]
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1636
        ]
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1637
    ].
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1638
1628
d5065006e796 fixed / beautified #full handleStyle (used with win95 style)
Claus Gittinger <cg@exept.de>
parents: 1551
diff changeset
  1639
    "Modified: / 29.7.1998 / 22:48:33 / cg"
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1640
!
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1641
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1642
drawHandleFormAtX:hx y:hy
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1643
    "draw a handle's bitmap at hx/hy"
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1644
876
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1645
    shadowForm notNil ifTrue:[
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1646
        gc paint:shadowColor.
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1647
        gc displayForm:shadowForm x:hx y:hy.
876
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1648
    ].
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1649
    lightForm notNil ifTrue:[
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1650
        gc paint:lightColor.
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1651
        gc displayForm:lightForm x:hx y:hy.
876
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1652
    ].
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1653
    gc paint:viewBackground
876
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1654
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1655
    "Modified: 7.11.1996 / 20:25:33 / cg"
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1656
!
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1657
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1658
drawSnapAt:anIndex
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1659
    "draw the snap for a handle at an index"
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1660
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1661
    |snapLayout icon level offLevel paint canChangeExtent
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1662
     left   "{ Class:SmallInteger }"
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1663
     top    "{ Class:SmallInteger }"
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1664
     width  "{ Class:SmallInteger }"
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1665
     height "{ Class:SmallInteger }"
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1666
     snapMode leftEdge wEdge topEdge hEdge part wPart hPart|
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1667
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1668
    (snapLayout := self snapLayoutAt:anIndex) isNil ifTrue:[
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1669
        "snap disabled"
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1670
        ^ self
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1671
    ].
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1672
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1673
    left   := snapLayout left.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1674
    top    := snapLayout top.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1675
    width  := snapLayout width.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1676
    height := snapLayout height.
2236
cd77d04c9a0a snapMode: #both
Claus Gittinger <cg@exept.de>
parents: 2228
diff changeset
  1677
    snapMode := self snapMode.
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1678
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1679
    offLevel := level := (snapAdornment level ? 0).
2238
397f5d6d59c5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2236
diff changeset
  1680
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1681
    canChangeExtent := self canChangeExtentOfViewAt:anIndex.
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1682
    canChangeExtent ifTrue:[
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1683
        (controller isSnapEntered:anIndex) ifTrue:[
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1684
            controller isSnapPressed ifTrue:[
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1685
                level := snapAdornment selectedLevel ? 0.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1686
                paint := snapAdornment selectedBgColor.
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1687
            ] ifFalse:[
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1688
                level := snapAdornment enterLevel ? 0.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1689
                paint := snapAdornment enterBgColor.
2238
397f5d6d59c5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2236
diff changeset
  1690
            ].
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1691
        ]
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1692
    ].
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1693
    paint isNil ifTrue:[
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1694
        paint := viewBackground.
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1695
    ].
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1696
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1697
    gc paint:paint.
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1698
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1699
"/    level == 0 ifTrue:[
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1700
"/    ].
2238
397f5d6d59c5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2236
diff changeset
  1701
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1702
    gc fillRectangleX:left+1 y:top+1 width:width-2 height:height-2.
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1703
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1704
    level ~~ 0 ifTrue:[
2236
cd77d04c9a0a snapMode: #both
Claus Gittinger <cg@exept.de>
parents: 2228
diff changeset
  1705
        leftEdge := left + 1.
2240
c878eeeb676f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2238
diff changeset
  1706
        wEdge := wPart := width - 2.
2236
cd77d04c9a0a snapMode: #both
Claus Gittinger <cg@exept.de>
parents: 2228
diff changeset
  1707
        topEdge := top + 1.
2240
c878eeeb676f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2238
diff changeset
  1708
        hEdge := hPart := height - 2.
2236
cd77d04c9a0a snapMode: #both
Claus Gittinger <cg@exept.de>
parents: 2228
diff changeset
  1709
2238
397f5d6d59c5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2236
diff changeset
  1710
        orientation == #vertical ifTrue:[
397f5d6d59c5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2236
diff changeset
  1711
            wPart := width // 3.
397f5d6d59c5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2236
diff changeset
  1712
        ] ifFalse:[
397f5d6d59c5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2236
diff changeset
  1713
            hPart := height // 3.
397f5d6d59c5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2236
diff changeset
  1714
        ].
397f5d6d59c5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2236
diff changeset
  1715
2236
cd77d04c9a0a snapMode: #both
Claus Gittinger <cg@exept.de>
parents: 2228
diff changeset
  1716
        level < 0 ifTrue:[
cd77d04c9a0a snapMode: #both
Claus Gittinger <cg@exept.de>
parents: 2228
diff changeset
  1717
            part := (self subViews at:anIndex) objectAttributeAt:#snapPart.
cd77d04c9a0a snapMode: #both
Claus Gittinger <cg@exept.de>
parents: 2228
diff changeset
  1718
            part == #left ifTrue:[
2238
397f5d6d59c5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2236
diff changeset
  1719
                self drawEdgesForX:leftEdge y:topEdge width:wEdge height:hEdge level:offLevel.
2243
c2a288b3b73e checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2242
diff changeset
  1720
                wPart := wPart + 1.
2236
cd77d04c9a0a snapMode: #both
Claus Gittinger <cg@exept.de>
parents: 2228
diff changeset
  1721
            ] ifFalse:[
cd77d04c9a0a snapMode: #both
Claus Gittinger <cg@exept.de>
parents: 2228
diff changeset
  1722
                part == #middle ifTrue:[
2238
397f5d6d59c5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2236
diff changeset
  1723
                    self drawEdgesForX:leftEdge y:topEdge width:wEdge height:hEdge level:offLevel.
2240
c878eeeb676f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2238
diff changeset
  1724
                    orientation == #vertical ifTrue:[
c878eeeb676f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2238
diff changeset
  1725
                        leftEdge := leftEdge + wPart.
c878eeeb676f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2238
diff changeset
  1726
                    ] ifFalse:[
c878eeeb676f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2238
diff changeset
  1727
                        topEdge := topEdge + hPart.
c878eeeb676f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2238
diff changeset
  1728
                    ]
2236
cd77d04c9a0a snapMode: #both
Claus Gittinger <cg@exept.de>
parents: 2228
diff changeset
  1729
                ] ifFalse:[
cd77d04c9a0a snapMode: #both
Claus Gittinger <cg@exept.de>
parents: 2228
diff changeset
  1730
                    part == #right ifTrue:[
2238
397f5d6d59c5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2236
diff changeset
  1731
                        self drawEdgesForX:leftEdge y:topEdge width:wEdge height:hEdge level:offLevel.
2240
c878eeeb676f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2238
diff changeset
  1732
                        orientation == #vertical ifTrue:[
2243
c2a288b3b73e checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2242
diff changeset
  1733
                            leftEdge := leftEdge + (width - wPart - 1).
2240
c878eeeb676f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2238
diff changeset
  1734
                        ] ifFalse:[
2243
c2a288b3b73e checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2242
diff changeset
  1735
                            topEdge := topEdge + (height - hPart - 1).
c2a288b3b73e checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2242
diff changeset
  1736
                        ].
c2a288b3b73e checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2242
diff changeset
  1737
                        wPart := wPart - 1.
2236
cd77d04c9a0a snapMode: #both
Claus Gittinger <cg@exept.de>
parents: 2228
diff changeset
  1738
                    ]
cd77d04c9a0a snapMode: #both
Claus Gittinger <cg@exept.de>
parents: 2228
diff changeset
  1739
                ]
cd77d04c9a0a snapMode: #both
Claus Gittinger <cg@exept.de>
parents: 2228
diff changeset
  1740
            ].
2240
c878eeeb676f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2238
diff changeset
  1741
            wEdge := wPart.
c878eeeb676f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2238
diff changeset
  1742
            hEdge := hPart.
2236
cd77d04c9a0a snapMode: #both
Claus Gittinger <cg@exept.de>
parents: 2228
diff changeset
  1743
        ].
cd77d04c9a0a snapMode: #both
Claus Gittinger <cg@exept.de>
parents: 2228
diff changeset
  1744
        self drawEdgesForX:leftEdge y:topEdge width:wEdge height:hEdge level:level.
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1745
    ].
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1746
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1747
    canChangeExtent ifFalse:[^ self].
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1748
2236
cd77d04c9a0a snapMode: #both
Claus Gittinger <cg@exept.de>
parents: 2228
diff changeset
  1749
    snapMode == #both ifTrue:[
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1750
        icon := (orientation == #vertical) 
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1751
                    ifTrue:[snapAdornment iconUpDown] 
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1752
                    ifFalse:[snapAdornment iconLeftRight]
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1753
    ] ifFalse:[
2236
cd77d04c9a0a snapMode: #both
Claus Gittinger <cg@exept.de>
parents: 2228
diff changeset
  1754
        (self snapAtIndexWillGrow:anIndex) ifTrue:[
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1755
            icon := (orientation == #vertical) 
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1756
                        ifTrue:[snapAdornment iconDown] 
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1757
                        ifFalse:[snapAdornment iconRight]
2236
cd77d04c9a0a snapMode: #both
Claus Gittinger <cg@exept.de>
parents: 2228
diff changeset
  1758
        ] ifFalse:[
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1759
            icon := (orientation == #vertical) 
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1760
                        ifTrue:[snapAdornment iconUp]   
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1761
                        ifFalse:[snapAdornment iconLeft]
2236
cd77d04c9a0a snapMode: #both
Claus Gittinger <cg@exept.de>
parents: 2228
diff changeset
  1762
        ].
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1763
    ].
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1764
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1765
    icon displayOn:self x:(left + ((width - icon width) // 2))
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1766
                        y:(top  + ((height - icon height) // 2)).
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1767
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1768
    "Modified: / 31-10-2010 / 12:58:27 / cg"
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1769
!
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1770
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1771
invertHandleBarAtX:hx y:hy
1894
abf63db59265 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1869
diff changeset
  1772
    |doLine oldStyle|
1628
d5065006e796 fixed / beautified #full handleStyle (used with win95 style)
Claus Gittinger <cg@exept.de>
parents: 1551
diff changeset
  1773
1894
abf63db59265 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1869
diff changeset
  1774
    doLine := (trackLine == #solidLine 
abf63db59265 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1869
diff changeset
  1775
               or:[trackLine == #dashedLine
abf63db59265 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1869
diff changeset
  1776
               or:[trackLine == #dottedLine]]).
1628
d5065006e796 fixed / beautified #full handleStyle (used with win95 style)
Claus Gittinger <cg@exept.de>
parents: 1551
diff changeset
  1777
1131
98922cb07e5b allow handleStyle of #none
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
  1778
    trackLine == #dashedLine ifTrue:[
4960
570e9c18fe4e Use message sends to access the lineStyle
Stefan Vogel <sv@exept.de>
parents: 4957
diff changeset
  1779
        oldStyle := gc lineStyle.
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1780
        gc lineStyle:#dashed.
1894
abf63db59265 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1869
diff changeset
  1781
    ] ifFalse:[
abf63db59265 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1869
diff changeset
  1782
        trackLine == #dottedLine ifTrue:[
4920
78c00f9e85d2 class: VariablePanel
Stefan Vogel <sv@exept.de>
parents: 4862
diff changeset
  1783
            oldStyle := gc lineStyle.
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1784
            gc lineStyle:#dotted.
1894
abf63db59265 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1869
diff changeset
  1785
        ]
1131
98922cb07e5b allow handleStyle of #none
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
  1786
    ].
98922cb07e5b allow handleStyle of #none
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
  1787
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1788
    gc clippedByChildren:false.
1131
98922cb07e5b allow handleStyle of #none
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
  1789
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1790
    self xoring:[
1129
17a77892f180 added support for dashed-LineTrack
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
  1791
        |yL xL halfHeight|
17a77892f180 added support for dashed-LineTrack
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
  1792
1628
d5065006e796 fixed / beautified #full handleStyle (used with win95 style)
Claus Gittinger <cg@exept.de>
parents: 1551
diff changeset
  1793
        halfHeight := (barHeight // 2) - 1.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1794
1129
17a77892f180 added support for dashed-LineTrack
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
  1795
        orientation == #vertical ifTrue:[
1894
abf63db59265 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1869
diff changeset
  1796
            yL := hy + halfHeight.
1628
d5065006e796 fixed / beautified #full handleStyle (used with win95 style)
Claus Gittinger <cg@exept.de>
parents: 1551
diff changeset
  1797
            doLine ifTrue:[
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1798
                gc displayLineFromX:0 y:yL toX:width y:yL.
1129
17a77892f180 added support for dashed-LineTrack
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
  1799
            ] ifFalse:[
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1800
                gc fillRectangleX:0 y:hy width:width height:barHeight
1129
17a77892f180 added support for dashed-LineTrack
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
  1801
            ]
17a77892f180 added support for dashed-LineTrack
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
  1802
        ] ifFalse:[
1894
abf63db59265 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1869
diff changeset
  1803
            xL := hx + halfHeight.
1628
d5065006e796 fixed / beautified #full handleStyle (used with win95 style)
Claus Gittinger <cg@exept.de>
parents: 1551
diff changeset
  1804
            doLine ifTrue:[
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1805
                gc displayLineFromX:xL y:0 toX:xL y:height.
1129
17a77892f180 added support for dashed-LineTrack
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
  1806
            ] ifFalse:[
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1807
                gc fillRectangleX:hx y:0 width:barHeight height:height
1129
17a77892f180 added support for dashed-LineTrack
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
  1808
            ]
1130
3c9a9961d225 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1129
diff changeset
  1809
        ].
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1810
    ].
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1811
    gc clippedByChildren:true.
1628
d5065006e796 fixed / beautified #full handleStyle (used with win95 style)
Claus Gittinger <cg@exept.de>
parents: 1551
diff changeset
  1812
1894
abf63db59265 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1869
diff changeset
  1813
    oldStyle notNil ifTrue:[
6061
b93fe69702df #TUNING by cg
Claus Gittinger <cg@exept.de>
parents: 5997
diff changeset
  1814
        gc lineStyle:oldStyle.
1131
98922cb07e5b allow handleStyle of #none
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
  1815
    ].
1129
17a77892f180 added support for dashed-LineTrack
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
  1816
1628
d5065006e796 fixed / beautified #full handleStyle (used with win95 style)
Claus Gittinger <cg@exept.de>
parents: 1551
diff changeset
  1817
    "Modified: / 28.4.1997 / 14:56:26 / dq"
1894
abf63db59265 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1869
diff changeset
  1818
    "Modified: / 3.5.1999 / 18:49:04 / cg"
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1819
!
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1820
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1821
lockRedraw
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1822
    redrawLocked := true
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1823
!
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1824
4433
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1825
redraw
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1826
    "redraw all of the handles"
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1827
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1828
    redrawLocked ~~ true ifTrue:[
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1829
        "/ self clear.
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1830
        self redrawHandlesFrom:1 to:(self subViews size)
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1831
    ]
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1832
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1833
    "Modified: 28.1.1997 / 17:54:15 / cg"
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1834
!
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  1835
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1836
redrawHandlesFrom:start to:stop
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1837
    "redraw some handles and snaps"
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1838
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1839
    subViews size ~~ 0 ifTrue:[
2623
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  1840
        self handleOriginsWithIndexFrom:start to:stop do:[:hPoint :hIndex |
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  1841
            |hx hy|
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  1842
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  1843
            hx := hPoint x.
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  1844
            hy := hPoint y.
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  1845
            barLevel notNil ifTrue:[
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  1846
                self drawEdgesForX:0 y:hy width:width height:barHeight level:barLevel.
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  1847
            ].
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1848
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1849
            "/ do not draw handle, if there is a snapper ...
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1850
            self hasSnapHandle ifTrue:[
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1851
                self drawSnapAt:hIndex-1
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1852
            ] ifFalse:[
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1853
                showHandle ifTrue:[
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1854
                    self drawHandle:hIndex atX:hx y:hy.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1855
                ].
2623
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  1856
            ].
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1857
        ].
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  1858
    ].
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1859
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  1860
    "Modified: / 31-10-2010 / 12:43:33 / cg"
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1861
!
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1862
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1863
unlockRedraw
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1864
    redrawLocked := false
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1865
! !
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1866
1159
856ac1c6046c changeSequenceOrderFor:to:
ca
parents: 1158
diff changeset
  1867
!VariablePanel methodsFor:'enumerating subviews'!
856ac1c6046c changeSequenceOrderFor:to:
ca
parents: 1158
diff changeset
  1868
856ac1c6046c changeSequenceOrderFor:to:
ca
parents: 1158
diff changeset
  1869
changeSequenceOrderFor:aSubView to:anIndex
3884
15b8ddf523b0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3864
diff changeset
  1870
    "change a subview's position in the subviews collection."
15b8ddf523b0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3864
diff changeset
  1871
1159
856ac1c6046c changeSequenceOrderFor:to:
ca
parents: 1158
diff changeset
  1872
    |success|
856ac1c6046c changeSequenceOrderFor:to:
ca
parents: 1158
diff changeset
  1873
856ac1c6046c changeSequenceOrderFor:to:
ca
parents: 1158
diff changeset
  1874
    success := super changeSequenceOrderFor:aSubView to:anIndex.
856ac1c6046c changeSequenceOrderFor:to:
ca
parents: 1158
diff changeset
  1875
    success ifTrue:[
856ac1c6046c changeSequenceOrderFor:to:
ca
parents: 1158
diff changeset
  1876
        self setupSubviews.
856ac1c6046c changeSequenceOrderFor:to:
ca
parents: 1158
diff changeset
  1877
        self resizeSubviews.
856ac1c6046c changeSequenceOrderFor:to:
ca
parents: 1158
diff changeset
  1878
    ].
856ac1c6046c changeSequenceOrderFor:to:
ca
parents: 1158
diff changeset
  1879
    ^ success
856ac1c6046c changeSequenceOrderFor:to:
ca
parents: 1158
diff changeset
  1880
! !
856ac1c6046c changeSequenceOrderFor:to:
ca
parents: 1158
diff changeset
  1881
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1882
!VariablePanel methodsFor:'event handling'!
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1883
4206
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1884
pointerEnter:buttonState x:x y:y
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1885
    showHandleWhenEntered == true ifTrue:[
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1886
        self showHandle:true
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1887
    ].
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1888
    super pointerEnter:buttonState x:x y:y.
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1889
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1890
    "Created: / 19-12-2010 / 09:29:51 / cg"
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1891
!
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1892
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1893
pointerLeave:buttonState
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1894
    showHandleWhenEntered == true ifTrue:[
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1895
        self showHandle:false
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1896
    ].
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1897
    super pointerLeave:buttonState.
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1898
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1899
    "Created: / 19-12-2010 / 09:30:20 / cg"
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1900
!
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  1901
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1902
sizeChanged:how
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1903
    "my size has changed; resize my subviews"
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1904
2123
33fda8594eee must resize children if realized;
Claus Gittinger <cg@exept.de>
parents: 2114
diff changeset
  1905
    realized ifTrue:[
980
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  1906
        (how == #smaller) ifTrue:[
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  1907
            self resizeSubviews
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  1908
        ] ifFalse:[
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  1909
            "/
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  1910
            "/ do it in reverse order, to avoid some redraws
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  1911
            "/
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  1912
            self resizeSubviewsFrom:(self subViews size) to:1
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  1913
        ]
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1914
    ].
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1915
    self changed:#sizeOfView with:how.
3670
10c6c46e16c2 dont forget the super-sizeChanged
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  1916
    superView notNil ifTrue:[
10c6c46e16c2 dont forget the super-sizeChanged
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  1917
        superView subViewChangedSize
10c6c46e16c2 dont forget the super-sizeChanged
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  1918
    ]
980
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  1919
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  1920
    "Modified: 28.1.1997 / 17:56:30 / cg"
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1921
! !
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1922
1821
b57cc9dc2c08 changed request-focus-with-Button press
Claus Gittinger <cg@exept.de>
parents: 1698
diff changeset
  1923
!VariablePanel methodsFor:'focus handling'!
b57cc9dc2c08 changed request-focus-with-Button press
Claus Gittinger <cg@exept.de>
parents: 1698
diff changeset
  1924
b57cc9dc2c08 changed request-focus-with-Button press
Claus Gittinger <cg@exept.de>
parents: 1698
diff changeset
  1925
wantsFocusWithButtonPress
b57cc9dc2c08 changed request-focus-with-Button press
Claus Gittinger <cg@exept.de>
parents: 1698
diff changeset
  1926
    "no, do not catch the keyboard focus on button click"
b57cc9dc2c08 changed request-focus-with-Button press
Claus Gittinger <cg@exept.de>
parents: 1698
diff changeset
  1927
b57cc9dc2c08 changed request-focus-with-Button press
Claus Gittinger <cg@exept.de>
parents: 1698
diff changeset
  1928
    ^ false
b57cc9dc2c08 changed request-focus-with-Button press
Claus Gittinger <cg@exept.de>
parents: 1698
diff changeset
  1929
b57cc9dc2c08 changed request-focus-with-Button press
Claus Gittinger <cg@exept.de>
parents: 1698
diff changeset
  1930
b57cc9dc2c08 changed request-focus-with-Button press
Claus Gittinger <cg@exept.de>
parents: 1698
diff changeset
  1931
! !
b57cc9dc2c08 changed request-focus-with-Button press
Claus Gittinger <cg@exept.de>
parents: 1698
diff changeset
  1932
2288
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  1933
!VariablePanel methodsFor:'initialization & release'!
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1934
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1935
computeBarHeight
958
b75025112346 commentary
Claus Gittinger <cg@exept.de>
parents: 924
diff changeset
  1936
    "compute the height if the separating bar from either the
b75025112346 commentary
Claus Gittinger <cg@exept.de>
parents: 924
diff changeset
  1937
     form or an explicit height given in the styleSheet"
b75025112346 commentary
Claus Gittinger <cg@exept.de>
parents: 924
diff changeset
  1938
1550
f0297a144983 clear view when resizing
Claus Gittinger <cg@exept.de>
parents: 1529
diff changeset
  1939
    <resource: #style (#'variablePanel.barHeight'
f0297a144983 clear view when resizing
Claus Gittinger <cg@exept.de>
parents: 1529
diff changeset
  1940
                       #'variablePanel.barHeightMM')>
924
81f3ca4512bd allow barHeight to be set in the styleSheet
Claus Gittinger <cg@exept.de>
parents: 900
diff changeset
  1941
5821
fd8b7742fe2c #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5792
diff changeset
  1942
    |bH h lvl|
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1943
876
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1944
    shadowForm notNil ifTrue:[
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1945
        bH := shadowForm height + 2.
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1946
    ] ifFalse:[
1869
b435e03cf803 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1821
diff changeset
  1947
        bH := styleSheet at:#'variablePanel.barHeight'.
924
81f3ca4512bd allow barHeight to be set in the styleSheet
Claus Gittinger <cg@exept.de>
parents: 900
diff changeset
  1948
        bH isNil ifTrue:[
1869
b435e03cf803 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1821
diff changeset
  1949
            h := styleSheet at:#'variablePanel.barHeightMM' default:2.
5632
bacbc9c526b2 device access
Claus Gittinger <cg@exept.de>
parents: 5563
diff changeset
  1950
            bH := (h * device verticalPixelPerMillimeter) rounded.
924
81f3ca4512bd allow barHeight to be set in the styleSheet
Claus Gittinger <cg@exept.de>
parents: 900
diff changeset
  1951
        ].
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1952
    ].
1869
b435e03cf803 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1821
diff changeset
  1953
    lvl := styleSheet at:#'variablePanel.barLevel' default:0.
1628
d5065006e796 fixed / beautified #full handleStyle (used with win95 style)
Claus Gittinger <cg@exept.de>
parents: 1551
diff changeset
  1954
    lvl ~~ 0 ifTrue:[
d5065006e796 fixed / beautified #full handleStyle (used with win95 style)
Claus Gittinger <cg@exept.de>
parents: 1551
diff changeset
  1955
        bH := bH + (lvl abs * 2).
d5065006e796 fixed / beautified #full handleStyle (used with win95 style)
Claus Gittinger <cg@exept.de>
parents: 1551
diff changeset
  1956
    ].
d5065006e796 fixed / beautified #full handleStyle (used with win95 style)
Claus Gittinger <cg@exept.de>
parents: 1551
diff changeset
  1957
876
9766a5eda233 examples
Claus Gittinger <cg@exept.de>
parents: 874
diff changeset
  1958
    self barHeight:bH.
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1959
    knobHeight := bH.
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1960
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1961
    handleLabels notNil ifTrue:[
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1962
        bH := handleLabels inject:bH into:[:maxSoFar :thisLabel |
874
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
  1963
                                           thisLabel isNil ifTrue:[
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
  1964
                                                maxSoFar
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
  1965
                                           ] ifFalse:[
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
  1966
                                                maxSoFar max:(thisLabel heightOn:self)
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
  1967
                                           ]
f79d88b92c1b example & fix for images
Claus Gittinger <cg@exept.de>
parents: 873
diff changeset
  1968
                                          ].
5821
fd8b7742fe2c #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 5792
diff changeset
  1969
        bH := bH + gc deviceFont descent - 1
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1970
    ].
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1971
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1972
    self barHeight:bH.
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1973
1628
d5065006e796 fixed / beautified #full handleStyle (used with win95 style)
Claus Gittinger <cg@exept.de>
parents: 1551
diff changeset
  1974
    "Modified: / 29.7.1998 / 14:47:21 / cg"
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1975
!
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1976
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1977
defaultControllerClass
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1978
    ^ VariablePanelController
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1979
!
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1980
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1981
initCursor
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1982
    "set the cursor - a double arrow"
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1983
1698
cab69c6081a8 use windows-like cursors if running on windows
Claus Gittinger <cg@exept.de>
parents: 1655
diff changeset
  1984
    cursor := self class 
cab69c6081a8 use windows-like cursors if running on windows
Claus Gittinger <cg@exept.de>
parents: 1655
diff changeset
  1985
                cursorForOrientation:orientation
5632
bacbc9c526b2 device access
Claus Gittinger <cg@exept.de>
parents: 5563
diff changeset
  1986
                onDevice:device
900
0541b96dd173 use Image instead of Form
Claus Gittinger <cg@exept.de>
parents: 876
diff changeset
  1987
1698
cab69c6081a8 use windows-like cursors if running on windows
Claus Gittinger <cg@exept.de>
parents: 1655
diff changeset
  1988
    "Modified: / 30.9.1998 / 18:20:35 / cg"
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1989
!
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1990
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1991
initStyle
966
824e0ecc0e6f comments
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  1992
    "setup viewStyle specifics"
824e0ecc0e6f comments
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  1993
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  1994
    |mm|
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1995
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1996
    super initStyle.
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1997
5632
bacbc9c526b2 device access
Claus Gittinger <cg@exept.de>
parents: 5563
diff changeset
  1998
    handleColor := DefaultHandleColor onDevice:device.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1999
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2000
    DefaultHandleStyle isNil ifTrue:[
496
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
  2001
        handleStyle := styleSheet name
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2002
    ] ifFalse:[
496
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
  2003
        handleStyle := DefaultHandleStyle
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2004
    ].
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2005
496
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
  2006
    handleLevel := DefaultHandleLevel.
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
  2007
    showHandle := DefaultShowHandle.
4206
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  2008
    showHandleWhenEntered := DefaultShowHandleWhenEntered.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2009
    handlePosition := DefaultHandlePosition.
2242
1aea02d32c96 snapHandlePosition is same as handlePosition
Claus Gittinger <cg@exept.de>
parents: 2241
diff changeset
  2010
    "/ snapHandlePosition := DefaultSnapHandlePosition.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2011
    trackLine := DefaultTrackingLine.
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2012
    separatingLine := DefaultSeparatingLine.
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2013
1529
509edab0a08b allow handleImage to be specified in styleSheet
Claus Gittinger <cg@exept.de>
parents: 1416
diff changeset
  2014
    DefaultHandleImage notNil ifTrue:[
5632
bacbc9c526b2 device access
Claus Gittinger <cg@exept.de>
parents: 5563
diff changeset
  2015
        shadowForm := DefaultHandleImage onDevice:device.
496
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
  2016
        barWidth := shadowForm width.
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2017
    ] ifFalse:[
1529
509edab0a08b allow handleImage to be specified in styleSheet
Claus Gittinger <cg@exept.de>
parents: 1416
diff changeset
  2018
        handleStyle == #next ifTrue:[
509edab0a08b allow handleImage to be specified in styleSheet
Claus Gittinger <cg@exept.de>
parents: 1416
diff changeset
  2019
            DefaultHandleImage notNil ifTrue:[
5632
bacbc9c526b2 device access
Claus Gittinger <cg@exept.de>
parents: 5563
diff changeset
  2020
                shadowForm := DefaultHandleImage onDevice:device.
1529
509edab0a08b allow handleImage to be specified in styleSheet
Claus Gittinger <cg@exept.de>
parents: 1416
diff changeset
  2021
            ] ifFalse:[
5632
bacbc9c526b2 device access
Claus Gittinger <cg@exept.de>
parents: 5563
diff changeset
  2022
                shadowForm := self class shadowFormOn:device.
bacbc9c526b2 device access
Claus Gittinger <cg@exept.de>
parents: 5563
diff changeset
  2023
                lightForm := self class lightFormOn:device.
1529
509edab0a08b allow handleImage to be specified in styleSheet
Claus Gittinger <cg@exept.de>
parents: 1416
diff changeset
  2024
            ].
509edab0a08b allow handleImage to be specified in styleSheet
Claus Gittinger <cg@exept.de>
parents: 1416
diff changeset
  2025
            barWidth := shadowForm width.
509edab0a08b allow handleImage to be specified in styleSheet
Claus Gittinger <cg@exept.de>
parents: 1416
diff changeset
  2026
        ] ifFalse:[
509edab0a08b allow handleImage to be specified in styleSheet
Claus Gittinger <cg@exept.de>
parents: 1416
diff changeset
  2027
            shadowForm := lightForm := nil.
496
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
  2028
5632
bacbc9c526b2 device access
Claus Gittinger <cg@exept.de>
parents: 5563
diff changeset
  2029
            mm := device verticalPixelPerMillimeter.
1529
509edab0a08b allow handleImage to be specified in styleSheet
Claus Gittinger <cg@exept.de>
parents: 1416
diff changeset
  2030
            barWidth := (1.5 * mm) rounded. "motif style width"
509edab0a08b allow handleImage to be specified in styleSheet
Claus Gittinger <cg@exept.de>
parents: 1416
diff changeset
  2031
        ].
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2032
    ].
5473
5723b596e1cf #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 5471
diff changeset
  2033
    barWidth := styleSheet at:#'variablePanel.barWidth' default:barWidth.
5723b596e1cf #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 5471
diff changeset
  2034
    
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2035
    self computeBarHeight.
496
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
  2036
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2037
    handleStyle == #mswindows ifTrue:[
496
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
  2038
        barWidth := (ArrowButton new direction:#up) width + 1 
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2039
    ].
496
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
  2040
4206
570f1a1e587e preps for dynamic handle visibility
Claus Gittinger <cg@exept.de>
parents: 4187
diff changeset
  2041
    "Modified: / 19-12-2010 / 09:31:29 / cg"
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2042
!
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2043
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2044
initialize
496
f22ac16a5093 commentary & code cleanup
Claus Gittinger <cg@exept.de>
parents: 485
diff changeset
  2045
    orientation isNil ifTrue:[orientation := #vertical].
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2046
    super initialize.
1628
d5065006e796 fixed / beautified #full handleStyle (used with win95 style)
Claus Gittinger <cg@exept.de>
parents: 1551
diff changeset
  2047
    self bitGravity:nil.
5471
dadc66355380 #BUGFIX
Stefan Vogel <sv@exept.de>
parents: 5465
diff changeset
  2048
5473
5723b596e1cf #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 5471
diff changeset
  2049
    
1628
d5065006e796 fixed / beautified #full handleStyle (used with win95 style)
Claus Gittinger <cg@exept.de>
parents: 1551
diff changeset
  2050
    "Modified: / 29.7.1998 / 16:07:23 / cg"
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2051
! !
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2052
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2053
!VariablePanel methodsFor:'private'!
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2054
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2055
anyNonRelativeSubviews
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2056
    "return true, if any of my subviews has no relative origin/extent"
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2057
980
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2058
    self subViews do:[:aComponent |
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2059
        aComponent relativeCorner isNil ifTrue:[^ true].
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2060
        aComponent relativeOrigin isNil ifTrue:[^ true]
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2061
    ].
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2062
    ^ false
980
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2063
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2064
    "Modified: 28.1.1997 / 17:57:26 / cg"
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2065
!
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2066
1655
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2067
expandSubView:expandedView
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2068
    "expand one of my subviews to full size"
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2069
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2070
    |pos subViews|
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2071
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2072
    realRelativeSizes notNil ifTrue:[
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2073
        "/ already expanded ..
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2074
        ^ self
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2075
    ].
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2076
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2077
    pos := 0.0. 
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2078
    subViews := self subViews.
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2079
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2080
    orientation == #vertical ifTrue:[
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2081
        realRelativeSizes := subViews collect:[:v | v relativeCorner y - v relativeOrigin y].
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2082
    ] ifFalse:[
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2083
        realRelativeSizes := subViews collect:[:v | v relativeCorner x - v relativeOrigin x].
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2084
    ].
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2085
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2086
    subViews do:[:aSubView |
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2087
        aSubView == expandedView ifTrue:[
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2088
            aSubView origin:(0.0 @ 0.0) corner:(1.0 @ 1.0).
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2089
            pos := 1.0
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2090
        ] ifFalse:[
3463
8408a4c800db focus handling
ca
parents: 3278
diff changeset
  2091
            aSubView beInvisible.
8408a4c800db focus handling
ca
parents: 3278
diff changeset
  2092
1655
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2093
            orientation == #vertical ifTrue:[
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2094
                aSubView origin:(0.0 @ pos) corner:(1.0 @ pos)
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2095
            ] ifFalse:[
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2096
                aSubView origin:(pos @ 0.0) corner:(pos @ 1.0)
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2097
            ]
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2098
        ]
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2099
    ].
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2100
    self resizeSubviews.
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2101
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2102
    "Modified: 28.1.1997 / 17:56:20 / cg"
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2103
!
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2104
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2105
handleLabelAt:hIndex
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2106
    handleLabels notNil ifTrue:[
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2107
        ^ handleLabels at:hIndex ifAbsent:nil
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2108
    ].
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2109
    ^ nil
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2110
!
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2111
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2112
handleOriginsWithIndexDo:aBlock
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2113
    "evaluate the argument block for every handle-origin"
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2114
980
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2115
    self handleOriginsWithIndexFrom:1 to:(self subViews size) do:aBlock
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2116
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2117
    "Modified: 28.1.1997 / 17:53:44 / cg"
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2118
!
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2119
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2120
handleOriginsWithIndexFrom:start to:stop do:aBlock
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2121
    "evaluate the argument block for some handle-origins"
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2122
980
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2123
    |x y hw hh hDelta vDelta subViews
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2124
     first "{ Class: SmallInteger }"
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2125
     last  "{ Class: SmallInteger }"|
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2126
980
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2127
    (subViews := self subViews) notNil ifTrue:[
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2128
        shadowForm notNil ifTrue:[
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2129
            hw := shadowForm width.
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2130
            hh := shadowForm height.
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2131
        ] ifFalse:[
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2132
            hw := hh := barWidth
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2133
        ].
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2134
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2135
        (handleStyle ~~ #normal and:[handleStyle ~~ #mswindows]) ifTrue:[
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2136
            hDelta := barWidth // 2.
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2137
            vDelta := barWidth // 2.
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2138
        ] ifFalse:[
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2139
            hDelta := vDelta := 0
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2140
        ].
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2141
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2142
        (handlePosition == #left) ifTrue:[
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2143
            x := hDelta. 
1381
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
  2144
            y := vDelta.
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
  2145
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
  2146
            orientation == #vertical ifTrue:[
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
  2147
                x := x + barWidth
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
  2148
            ] ifFalse:[
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
  2149
                y := y + barWidth
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
  2150
            ].
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
  2151
            margin ~~ 0 ifTrue:[
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
  2152
                x := x + 2
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
  2153
            ].
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2154
        ] ifFalse:[
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2155
            (handlePosition == #right) ifTrue:[
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2156
                x := width - hw - margin - hDelta.
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2157
                y := height - hh - margin - vDelta.
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2158
            ] ifFalse:[
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2159
                x := width - barWidth // 2.
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2160
                y := height - barWidth // 2
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2161
            ]
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2162
        ].
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2163
        first := start + 1.
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2164
        last := stop.
1381
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
  2165
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2166
        first to:last do:[:index |
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2167
            |view|
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2168
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2169
            view := subViews at:index.
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2170
            orientation == #vertical ifTrue:[
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2171
                y := view top "origin y" - barHeight + 1.
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2172
            ] ifFalse:[
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2173
                x := view left "origin x" - barHeight + 1.
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2174
            ].
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2175
            aBlock value:(x @ y) value:index
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2176
        ]
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2177
    ]
980
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2178
1381
d69604d4bbb8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1362
diff changeset
  2179
    "Modified: / 1.11.1997 / 11:53:40 / cg"
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2180
!
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2181
2623
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  2182
redrawIfShown
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  2183
    shown ifTrue:[
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  2184
        self clear.
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  2185
    ].
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  2186
    self invalidate
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  2187
!
fdc67970afc9 barLevel added
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
  2188
2026
9876789dfba7 added interface to change the subViews sizes programmatically.
Claus Gittinger <cg@exept.de>
parents: 1987
diff changeset
  2189
resizeSubViewsTo:relativeSizeList
9876789dfba7 added interface to change the subViews sizes programmatically.
Claus Gittinger <cg@exept.de>
parents: 1987
diff changeset
  2190
    "change subviews sizes as defined in the argument list
9876789dfba7 added interface to change the subViews sizes programmatically.
Claus Gittinger <cg@exept.de>
parents: 1987
diff changeset
  2191
     (a collection of relative sizes)"
9876789dfba7 added interface to change the subViews sizes programmatically.
Claus Gittinger <cg@exept.de>
parents: 1987
diff changeset
  2192
9876789dfba7 added interface to change the subViews sizes programmatically.
Claus Gittinger <cg@exept.de>
parents: 1987
diff changeset
  2193
    |pos subViews|
9876789dfba7 added interface to change the subViews sizes programmatically.
Claus Gittinger <cg@exept.de>
parents: 1987
diff changeset
  2194
9876789dfba7 added interface to change the subViews sizes programmatically.
Claus Gittinger <cg@exept.de>
parents: 1987
diff changeset
  2195
    subViews := self subViews.
9876789dfba7 added interface to change the subViews sizes programmatically.
Claus Gittinger <cg@exept.de>
parents: 1987
diff changeset
  2196
9876789dfba7 added interface to change the subViews sizes programmatically.
Claus Gittinger <cg@exept.de>
parents: 1987
diff changeset
  2197
    pos := 0.0.
9876789dfba7 added interface to change the subViews sizes programmatically.
Claus Gittinger <cg@exept.de>
parents: 1987
diff changeset
  2198
    subViews with:relativeSizeList do:[:aSubView :relSize |
9876789dfba7 added interface to change the subViews sizes programmatically.
Claus Gittinger <cg@exept.de>
parents: 1987
diff changeset
  2199
        orientation == #vertical ifTrue:[
9876789dfba7 added interface to change the subViews sizes programmatically.
Claus Gittinger <cg@exept.de>
parents: 1987
diff changeset
  2200
            aSubView origin:(0.0 @ pos) corner:(1.0 @ (pos + relSize))
9876789dfba7 added interface to change the subViews sizes programmatically.
Claus Gittinger <cg@exept.de>
parents: 1987
diff changeset
  2201
        ] ifFalse:[
9876789dfba7 added interface to change the subViews sizes programmatically.
Claus Gittinger <cg@exept.de>
parents: 1987
diff changeset
  2202
            aSubView origin:(pos @ 0.0) corner:((pos + relSize) @ 1.0)
9876789dfba7 added interface to change the subViews sizes programmatically.
Claus Gittinger <cg@exept.de>
parents: 1987
diff changeset
  2203
        ].
9876789dfba7 added interface to change the subViews sizes programmatically.
Claus Gittinger <cg@exept.de>
parents: 1987
diff changeset
  2204
        pos := pos + relSize.
9876789dfba7 added interface to change the subViews sizes programmatically.
Claus Gittinger <cg@exept.de>
parents: 1987
diff changeset
  2205
    ].
9876789dfba7 added interface to change the subViews sizes programmatically.
Claus Gittinger <cg@exept.de>
parents: 1987
diff changeset
  2206
    self resizeSubviews.
9876789dfba7 added interface to change the subViews sizes programmatically.
Claus Gittinger <cg@exept.de>
parents: 1987
diff changeset
  2207
9876789dfba7 added interface to change the subViews sizes programmatically.
Claus Gittinger <cg@exept.de>
parents: 1987
diff changeset
  2208
!
9876789dfba7 added interface to change the subViews sizes programmatically.
Claus Gittinger <cg@exept.de>
parents: 1987
diff changeset
  2209
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2210
resizeSubviews
1151
94aff1c7b0aa Fix comments, eliminate common message sends.
Stefan Vogel <sv@exept.de>
parents: 1131
diff changeset
  2211
    "readjust size of all subviews"
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2212
980
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2213
    self resizeSubviewsFrom:1 to:(self subViews size)
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2214
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2215
    "Modified: 28.1.1997 / 17:54:42 / cg"
1151
94aff1c7b0aa Fix comments, eliminate common message sends.
Stefan Vogel <sv@exept.de>
parents: 1131
diff changeset
  2216
    "Modified: 22.3.1997 / 01:01:31 / stefan"
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2217
!
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2218
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2219
resizeSubviewsFrom:start to:stop
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2220
    "readjust size of some subviews"
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2221
5476
bc85eb26e166 #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 5473
diff changeset
  2222
    |step nSubviews subViews bhHalf|
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2223
5261
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2224
    subViews := self subViews.
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2225
    nSubviews := subViews size.
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2226
    nSubviews == 0 ifTrue:[ ^ self ].
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2227
5476
bc85eb26e166 #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 5473
diff changeset
  2228
    bhHalf := barHeight // 2.
bc85eb26e166 #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 5473
diff changeset
  2229
    "/ Transcript showCR:barHeight.    
5261
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2230
    (start <= stop) ifTrue:[
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2231
        step := 1
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2232
    ] ifFalse:[
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2233
        step := -1
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2234
    ].
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2235
    start to:stop by:step do:[:index |
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2236
        |bw view o1 o2 newOrg newCorner newExt|
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2237
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2238
        view := subViews at:index.
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2239
        bw := view borderWidth.
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2240
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2241
        index == 1 ifTrue:[
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2242
            o1 := 0.
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2243
        ] ifFalse:[
5476
bc85eb26e166 #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 5473
diff changeset
  2244
            barHeight odd ifTrue:[
bc85eb26e166 #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 5473
diff changeset
  2245
                o1 := bhHalf + 1 - bw
bc85eb26e166 #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 5473
diff changeset
  2246
            ] ifFalse:[    
bc85eb26e166 #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 5473
diff changeset
  2247
                o1 := bhHalf - bw
bc85eb26e166 #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 5473
diff changeset
  2248
            ].
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2249
        ].
5476
bc85eb26e166 #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 5473
diff changeset
  2250
        index == nSubviews ifTrue:[
5261
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2251
            o2 := 0.
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2252
        ] ifFalse:[
5476
bc85eb26e166 #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 5473
diff changeset
  2253
            o2 := (barHeight-bhHalf) - bw
5261
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2254
        ].
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2255
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2256
        newOrg := view computeOrigin.
5476
bc85eb26e166 #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 5473
diff changeset
  2257
        "/ Transcript showCR:newOrg.
5261
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2258
        newOrg notNil ifTrue:[
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2259
            (index ~~ 1) ifTrue:[
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2260
                orientation == #vertical ifTrue:[
5261
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2261
                    newOrg y:(newOrg y + o1)
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2262
                ] ifFalse:[
5261
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2263
                    newOrg x:(newOrg x + o1)
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2264
                ]
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2265
            ].
1550
f0297a144983 clear view when resizing
Claus Gittinger <cg@exept.de>
parents: 1529
diff changeset
  2266
        ].
5261
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2267
        newExt := view computeExtent.
5476
bc85eb26e166 #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 5473
diff changeset
  2268
        "/ Transcript show:view layout;show:' -> '.
bc85eb26e166 #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 5473
diff changeset
  2269
        "/ Transcript show:view relativeExtent;show:' -> '.
bc85eb26e166 #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 5473
diff changeset
  2270
        "/ Transcript showCR:newExt.
5261
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2271
        newExt notNil ifTrue:[
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2272
            orientation == #vertical ifTrue:[
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2273
                newExt y:(newExt y - o2 - o1)
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2274
            ] ifFalse:[
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2275
                newExt x:(newExt x - o2 - o1)
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2276
            ]
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2277
        ].
5476
bc85eb26e166 #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 5473
diff changeset
  2278
        "/ Transcript showCR:(newOrg extent:newExt).
5261
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2279
        view pixelOrigin:newOrg extent:newExt.
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2280
    ].
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2281
    shown ifTrue:[
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2282
        "/ must clear, since handles are copied automatically (by bitGravity)
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2283
        "/ self clearAndInvalidate.
ef0c874b4053 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 5051
diff changeset
  2284
        self sensor pushUserEvent:#clearAndInvalidate for:self withArguments:#()
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2285
    ]
873
d1274f0256a6 removed transcript message
Claus Gittinger <cg@exept.de>
parents: 871
diff changeset
  2286
2160
a750dda8205b checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2123
diff changeset
  2287
    "Modified: / 22.3.1997 / 01:02:21 / stefan"
a750dda8205b checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2123
diff changeset
  2288
    "Modified: / 23.2.2000 / 18:32:37 / cg"
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2289
!
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2290
1655
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2291
restoreSubViewRatios
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2292
    "restore my subviews sizes to the state before the full-expand"
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2293
3463
8408a4c800db focus handling
ca
parents: 3278
diff changeset
  2294
    |pos|
1655
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2295
4624
e3867912ecd4 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 4433
diff changeset
  2296
    realRelativeSizes isNil ifTrue:[
1655
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2297
        "/ not expanded - ignore
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2298
        ^ self
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2299
    ].
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2300
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2301
    pos := 0.0.
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2302
    self subViews with:realRelativeSizes do:[:aSubView :aRelativeSize |
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2303
        orientation == #vertical ifTrue:[
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2304
            aSubView origin:(0.0 @ pos) corner:(1.0 @ (pos+aRelativeSize))
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2305
        ] ifFalse:[
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2306
            aSubView origin:(pos @ 0.0) corner:((pos+aRelativeSize) @ 1.0)
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2307
        ].
3463
8408a4c800db focus handling
ca
parents: 3278
diff changeset
  2308
        pos := pos + aRelativeSize.
8408a4c800db focus handling
ca
parents: 3278
diff changeset
  2309
8408a4c800db focus handling
ca
parents: 3278
diff changeset
  2310
        aSubView shown ifFalse:[
8408a4c800db focus handling
ca
parents: 3278
diff changeset
  2311
            aSubView hiddenOnRealize:false.
8408a4c800db focus handling
ca
parents: 3278
diff changeset
  2312
            shown ifTrue:[aSubView beVisible].
8408a4c800db focus handling
ca
parents: 3278
diff changeset
  2313
        ].
1655
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2314
    ].
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2315
    realRelativeSizes := nil.
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2316
    self resizeSubviews.
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2317
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2318
    "Modified: 28.1.1997 / 17:56:20 / cg"
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2319
!
2928bb99f774 added #expand & #restore
Claus Gittinger <cg@exept.de>
parents: 1628
diff changeset
  2320
4433
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2321
setupSubviewOrigins
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2322
    "setup subviews origins 
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2323
     if we only have relative extents 
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2324
     (Variable Panels need relative origins and corners!!) (SV 16.1.95)"
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2325
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2326
    |x y e eX eY subViews n "{ Class: SmallInteger }"|
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2327
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2328
    x := y := 0.0.
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2329
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2330
    subViews := self subViews.
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2331
    n := subViews size.
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2332
    1 to:n do:[:index |
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2333
        |view|
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2334
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2335
        view := subViews at:index.
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2336
        e := view relativeExtent.
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2337
        e notNil ifTrue:[
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2338
            view relativeExtent:nil.
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2339
            eX := e x.
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2340
            eY := e y.
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2341
            index == n ifTrue:[
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2342
                view origin:(x @ y) corner:(1.0 @ 1.0)
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2343
            ] ifFalse:[
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2344
                orientation == #vertical ifTrue:[
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2345
                    view origin:(x @ y) corner:(1.0 @ (y+eY))
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2346
                ] ifFalse:[
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2347
                    view origin:(x @ y) corner:((x+eX) @ 1.0)
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2348
                ].
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2349
            ].
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2350
            orientation == #vertical ifTrue:[
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2351
                y := y + eY.
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2352
            ] ifFalse:[    
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2353
                x := x + eX.
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2354
            ]
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2355
        ] ifFalse: [
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2356
            view origin:(x @ y).
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2357
            orientation == #vertical ifTrue:[
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2358
                y := view relativeCorner y.
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2359
            ] ifFalse:[
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2360
                x := view relativeCorner x.
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2361
            ]
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2362
        ].
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2363
    ]
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2364
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2365
    "Modified: 21.8.1996 / 10:01:29 / stefan"
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2366
    "Modified: 28.1.1997 / 17:55:21 / cg"
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2367
!
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2368
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2369
setupSubviews
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2370
    "setup subviews sizes (in case of non-relative sizes)"
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2371
980
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2372
    |pos delta subViews nSubViews "{ Class: SmallInteger }"|
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2373
300
0823ef38e629 adding/removing views to Panels
ah
parents: 299
diff changeset
  2374
    "/ setup all subviews to spread evenly ...
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2375
980
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2376
    subViews := self subViews.
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2377
    nSubViews := subViews size.
1043
f0eeb4035bb8 re-setup subViews when removing a subview;
ca
parents: 980
diff changeset
  2378
    nSubViews == 0 ifTrue:[^ self].
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2379
980
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2380
    pos := 0.0. 
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2381
    delta := 1.0 / nSubViews.
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2382
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2383
    1 to:nSubViews do:[:index |
2160
a750dda8205b checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2123
diff changeset
  2384
        |view org corn|
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2385
980
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2386
        view := subViews at:index.
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2387
        orientation == #vertical ifTrue:[
2160
a750dda8205b checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2123
diff changeset
  2388
            org := (0.0 @ pos). 
980
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2389
            index == subViews size ifTrue:[
2160
a750dda8205b checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2123
diff changeset
  2390
                corn := (1.0 @ 1.0)
980
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2391
            ] ifFalse:[
2160
a750dda8205b checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2123
diff changeset
  2392
                corn := (1.0 @ (pos + delta))
980
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2393
            ].
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2394
        ] ifFalse:[
2160
a750dda8205b checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2123
diff changeset
  2395
            org := (pos @ 0.0).
980
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2396
            index == subViews size ifTrue:[
2160
a750dda8205b checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2123
diff changeset
  2397
                corn := (1.0 @ 1.0)
980
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2398
            ] ifFalse:[
2160
a750dda8205b checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2123
diff changeset
  2399
                corn := ((pos + delta) @ 1.0)
980
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2400
            ].
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2401
        ].
2160
a750dda8205b checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2123
diff changeset
  2402
        view origin:org corner:corn.
980
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2403
        pos := pos + delta
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2404
    ]
980
6079922a5519 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 966
diff changeset
  2405
2160
a750dda8205b checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2123
diff changeset
  2406
    "Modified: / 23.2.2000 / 18:14:01 / cg"
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2407
! !
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2408
2743
65b5445cb984 method category rename
Claus Gittinger <cg@exept.de>
parents: 2734
diff changeset
  2409
!VariablePanel methodsFor:'private-snap queries'!
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2410
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2411
canChangeExtentOfViewAt:anIndex
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2412
    "returns true if extent at an index is changable
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2413
    "
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2414
    |view|
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2415
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2416
    view := subViews at:anIndex ifAbsent:[^ false].
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2417
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2418
    orientation == #vertical ifTrue:[
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2419
        view height > 2 ifFalse:[
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2420
            view := subViews at:(anIndex + 1) ifAbsent:[^ false].
2598
6817bf076dc9 beautified CAs UGLY indent style
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  2421
            ^ view height > 2
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2422
        ].
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2423
        ^ true
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2424
    ].
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2425
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2426
    view width > 2 ifFalse:[
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2427
        view := subViews at:(anIndex + 1) ifAbsent:[^ false].
2598
6817bf076dc9 beautified CAs UGLY indent style
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  2428
        ^ view width > 2
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2429
    ].
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2430
    ^ true
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2431
!
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2432
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2433
initSnapAdornment
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2434
    |num icon level enterLevel selectedLevel color|
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2435
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2436
    snapAdornment isNil ifTrue:[
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2437
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2438
        snapAdornment := SnapAdornment "IdentityDictionary" new.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2439
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2440
        level         := styleSheet at:#'variablePanel.snapLevel'      default:1.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2441
        enterLevel    := styleSheet at:#'variablePanel.snapEnterLevel' default:level.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2442
        selectedLevel := styleSheet at:#'variablePanel.selectedLevel'  default:(level negated).
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2443
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2444
        snapAdornment level:level.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2445
        snapAdornment enterLevel:enterLevel.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2446
        snapAdornment selectedLevel:selectedLevel.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2447
        snapAdornment mode:#min.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2448
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2449
        color := styleSheet 
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2450
                    colorAt:#'variablePanel.snapSelectedBgColor'
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2451
                    default:(StyleSheet colorAt:#'button.activeBackgroundColor').
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2452
        color notNil ifTrue:[
5632
bacbc9c526b2 device access
Claus Gittinger <cg@exept.de>
parents: 5563
diff changeset
  2453
            snapAdornment selectedBgColor:(color onDevice:device)
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2454
        ].
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2455
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2456
        color := StyleSheet 
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2457
                    colorAt:#'variablePanel.snapEnterBgColor'
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2458
                    default:(StyleSheet colorAt:#'button.enteredBackgroundColor').
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2459
        color notNil ifTrue:[
5632
bacbc9c526b2 device access
Claus Gittinger <cg@exept.de>
parents: 5563
diff changeset
  2460
            snapAdornment enterBgColor:(color onDevice:device)
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2461
        ].
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2462
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2463
        self class snapIcons keysAndValuesDo:[:aKey :anIcon|
5632
bacbc9c526b2 device access
Claus Gittinger <cg@exept.de>
parents: 5563
diff changeset
  2464
            anIcon device == device ifTrue:[
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2465
                icon := anIcon
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2466
            ] ifFalse:[
5632
bacbc9c526b2 device access
Claus Gittinger <cg@exept.de>
parents: 5563
diff changeset
  2467
                icon := anIcon copy onDevice:device.
bacbc9c526b2 device access
Claus Gittinger <cg@exept.de>
parents: 5563
diff changeset
  2468
                device == Display ifTrue:[
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2469
                    self class snapIcons at:aKey put:icon.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2470
                ]
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2471
            ].
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2472
            snapAdornment at:aKey put:icon
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2473
        ].
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2474
        "compute required snap extent including level and margins ..."
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2475
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2476
        num  := level abs max:(enterLevel abs).
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2477
        num  := num max:(selectedLevel abs).
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2478
        num  := (num + 2) "margin into handle := 1" * 2.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2479
        icon := snapAdornment iconUp.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2480
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2481
        snapAdornment height:(icon height + num).
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2482
        snapAdornment width:(icon width  + num).
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2483
    ].
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2484
2598
6817bf076dc9 beautified CAs UGLY indent style
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  2485
    ^ snapAdornment
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2486
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2487
    "Modified: / 31-10-2010 / 12:59:39 / cg"
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2488
!
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2489
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2490
snapAtIndexWillGrow:anIndex
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2491
    "returns true if the view assigned to the snap at an index will grow
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2492
     if pressing the snap
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2493
    "
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2494
    |view mode|
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2495
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2496
    (mode := self snapMode) notNil ifTrue:[
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2497
        (mode == #max or:[mode == #maxMin]) ifTrue:[
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2498
            "on press the view is increased to bottom(vertical) or right(horizontal)"
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2499
            view := subViews at:(anIndex + 1) ifAbsent:[^ false].
2598
6817bf076dc9 beautified CAs UGLY indent style
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  2500
            ^ orientation == #vertical ifTrue:[view height > 2] ifFalse:[view width  > 2]
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2501
        ].    
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2502
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2503
        (mode == #min or:[mode == #minMax]) ifTrue:[
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2504
            "on press the view is decreased to top(vertical) or left (horizontal)"
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2505
            view := subViews at:anIndex ifAbsent:[^ false].
2598
6817bf076dc9 beautified CAs UGLY indent style
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  2506
            ^ orientation == #vertical ifTrue:[view height <= 2] ifFalse:[view width  <= 2]
2236
cd77d04c9a0a snapMode: #both
Claus Gittinger <cg@exept.de>
parents: 2228
diff changeset
  2507
        ].
cd77d04c9a0a snapMode: #both
Claus Gittinger <cg@exept.de>
parents: 2228
diff changeset
  2508
6161
6763327fd155 #OTHER by mawalch
mawalch
parents: 6061
diff changeset
  2509
        self error:'unexpected snapMode state'.
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2510
    ].    
2598
6817bf076dc9 beautified CAs UGLY indent style
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  2511
    ^ false     "snap is disabled"
6161
6763327fd155 #OTHER by mawalch
mawalch
parents: 6061
diff changeset
  2512
6763327fd155 #OTHER by mawalch
mawalch
parents: 6061
diff changeset
  2513
    "Modified: / 29-05-2017 / 15:28:25 / mawalch"
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2514
!
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2515
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2516
snapLayoutAt:anIndex
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2517
    "returns the layout of the snap at an index
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2518
     or nil if snaps are disabled
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2519
    "
2598
6817bf076dc9 beautified CAs UGLY indent style
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  2520
    |v1 v2 left top right bot w snapX snapY|
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2521
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2522
    self hasSnapHandle ifFalse:[^ nil].         "snap disabled"
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2523
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2524
    v1 := subViews at:anIndex     ifAbsent:[^ nil].
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2525
    v2 := subViews at:anIndex + 1 ifAbsent:[^ nil].
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2526
    w  := snapAdornment width ? 0.
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2527
2242
1aea02d32c96 snapHandlePosition is same as handlePosition
Claus Gittinger <cg@exept.de>
parents: 2241
diff changeset
  2528
    handlePosition "snapHandlePosition" == #left ifTrue:[
2241
d9c7f1486b7a draw snap at very left of panel
Claus Gittinger <cg@exept.de>
parents: 2240
diff changeset
  2529
        snapX := snapY := margin. "/ ViewSpacing.
2228
d74b093fe48d snapHandlePosition adjustable
Claus Gittinger <cg@exept.de>
parents: 2179
diff changeset
  2530
    ] ifFalse:[
2242
1aea02d32c96 snapHandlePosition is same as handlePosition
Claus Gittinger <cg@exept.de>
parents: 2241
diff changeset
  2531
        handlePosition "snapHandlePosition" == #right ifTrue:[
2228
d74b093fe48d snapHandlePosition adjustable
Claus Gittinger <cg@exept.de>
parents: 2179
diff changeset
  2532
            snapX := width - w.
d74b093fe48d snapHandlePosition adjustable
Claus Gittinger <cg@exept.de>
parents: 2179
diff changeset
  2533
            snapY := height - w.
d74b093fe48d snapHandlePosition adjustable
Claus Gittinger <cg@exept.de>
parents: 2179
diff changeset
  2534
        ] ifFalse:[
d74b093fe48d snapHandlePosition adjustable
Claus Gittinger <cg@exept.de>
parents: 2179
diff changeset
  2535
            snapX := (width - w) // 2.
d74b093fe48d snapHandlePosition adjustable
Claus Gittinger <cg@exept.de>
parents: 2179
diff changeset
  2536
            snapY := (height - w) // 2.
d74b093fe48d snapHandlePosition adjustable
Claus Gittinger <cg@exept.de>
parents: 2179
diff changeset
  2537
        ].
d74b093fe48d snapHandlePosition adjustable
Claus Gittinger <cg@exept.de>
parents: 2179
diff changeset
  2538
    ].
d74b093fe48d snapHandlePosition adjustable
Claus Gittinger <cg@exept.de>
parents: 2179
diff changeset
  2539
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2540
    orientation == #vertical ifTrue:[
2228
d74b093fe48d snapHandlePosition adjustable
Claus Gittinger <cg@exept.de>
parents: 2179
diff changeset
  2541
        left := snapX. "/ v1 width - w // 2.
2598
6817bf076dc9 beautified CAs UGLY indent style
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  2542
        top := v1 bottom + 1.
6817bf076dc9 beautified CAs UGLY indent style
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  2543
        right := left + w.
6817bf076dc9 beautified CAs UGLY indent style
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  2544
        bot := v2 top.
6817bf076dc9 beautified CAs UGLY indent style
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  2545
    ] ifFalse:[
6817bf076dc9 beautified CAs UGLY indent style
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  2546
        top := snapY. "/ v1 height - w // 2.
6817bf076dc9 beautified CAs UGLY indent style
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  2547
        left := v1 right + 1.
6817bf076dc9 beautified CAs UGLY indent style
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  2548
        right := v2 left.
6817bf076dc9 beautified CAs UGLY indent style
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  2549
        bot := top + w.
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2550
    ].
2598
6817bf076dc9 beautified CAs UGLY indent style
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  2551
    ^ Rectangle left:left top:top right:right bottom:bot
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2552
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2553
    "Modified: / 31-10-2010 / 12:47:16 / cg"
2179
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2554
! !
ae22ac1e068e support snap
ca
parents: 2160
diff changeset
  2555
3864
3b8f1fe89d48 UIPainter can now resize subviews of PanelViews
Stefan Vogel <sv@exept.de>
parents: 3670
diff changeset
  2556
!VariablePanel methodsFor:'queries'!
3b8f1fe89d48 UIPainter can now resize subviews of PanelViews
Stefan Vogel <sv@exept.de>
parents: 3670
diff changeset
  2557
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2558
hasSnapHandle
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2559
    ^ snapAdornment notNil
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2560
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2561
    "Created: / 31-10-2010 / 12:43:21 / cg"
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2562
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2563
4433
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2564
isHorizontal
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2565
    ^ orientation == #horizontal
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2566
!
d8b26708a2ba category of:7 methods
Claus Gittinger <cg@exept.de>
parents: 4260
diff changeset
  2567
3864
3b8f1fe89d48 UIPainter can now resize subviews of PanelViews
Stefan Vogel <sv@exept.de>
parents: 3670
diff changeset
  2568
isLayoutWrapper
3b8f1fe89d48 UIPainter can now resize subviews of PanelViews
Stefan Vogel <sv@exept.de>
parents: 3670
diff changeset
  2569
    "answer true, if this view defines the layout of it's subviews"
3b8f1fe89d48 UIPainter can now resize subviews of PanelViews
Stefan Vogel <sv@exept.de>
parents: 3670
diff changeset
  2570
3b8f1fe89d48 UIPainter can now resize subviews of PanelViews
Stefan Vogel <sv@exept.de>
parents: 3670
diff changeset
  2571
    ^ true
3b8f1fe89d48 UIPainter can now resize subviews of PanelViews
Stefan Vogel <sv@exept.de>
parents: 3670
diff changeset
  2572
! !
3b8f1fe89d48 UIPainter can now resize subviews of PanelViews
Stefan Vogel <sv@exept.de>
parents: 3670
diff changeset
  2573
2288
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  2574
!VariablePanel methodsFor:'realization'!
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  2575
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  2576
fixSize 
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  2577
    super fixSize.
2305
f2850e54b0ab only access originChanged, extentChanged and cornerChanged
Claus Gittinger <cg@exept.de>
parents: 2288
diff changeset
  2578
    self extentChangedFlag ifTrue:[
2288
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  2579
        self resizeSubviews
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  2580
    ].
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  2581
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  2582
    "Modified: 22.3.1997 / 01:19:55 / stefan"
2531
6fc09f6a83dd fix relative sizes when realized
Claus Gittinger <cg@exept.de>
parents: 2483
diff changeset
  2583
!
6fc09f6a83dd fix relative sizes when realized
Claus Gittinger <cg@exept.de>
parents: 2483
diff changeset
  2584
6fc09f6a83dd fix relative sizes when realized
Claus Gittinger <cg@exept.de>
parents: 2483
diff changeset
  2585
realize
6fc09f6a83dd fix relative sizes when realized
Claus Gittinger <cg@exept.de>
parents: 2483
diff changeset
  2586
    super realize.
5471
dadc66355380 #BUGFIX
Stefan Vogel <sv@exept.de>
parents: 5465
diff changeset
  2587
    self anyNonRelativeSubviews ifTrue:[
2533
0da5e1d49faa size computation fixed
Claus Gittinger <cg@exept.de>
parents: 2531
diff changeset
  2588
        self setupSubviews.
0da5e1d49faa size computation fixed
Claus Gittinger <cg@exept.de>
parents: 2531
diff changeset
  2589
        self sizeChanged:nil.   "/ force recomputation of subviews
2531
6fc09f6a83dd fix relative sizes when realized
Claus Gittinger <cg@exept.de>
parents: 2483
diff changeset
  2590
    ].
2288
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  2591
! !
93f27fcd6dc2 category change
Claus Gittinger <cg@exept.de>
parents: 2279
diff changeset
  2592
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2593
!VariablePanel::SnapAdornment methodsFor:'accessing'!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2594
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2595
enterBgColor
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2596
    ^ enterBgColor
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2597
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2598
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2599
enterBgColor:something
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2600
    enterBgColor := something.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2601
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2602
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2603
enterLevel
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2604
    ^ enterLevel
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2605
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2606
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2607
enterLevel:something
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2608
    enterLevel := something.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2609
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2610
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2611
height
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2612
    ^ height
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2613
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2614
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2615
height:something
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2616
    height := something.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2617
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2618
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2619
iconDown
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2620
    ^ iconDown
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2621
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2622
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2623
iconDown:something
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2624
    iconDown := something.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2625
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2626
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2627
iconLeft
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2628
    ^ iconLeft
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2629
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2630
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2631
iconLeft:something
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2632
    iconLeft := something.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2633
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2634
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2635
iconLeftRight
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2636
    ^ iconLeftRight
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2637
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2638
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2639
iconLeftRight:something
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2640
    iconLeftRight := something.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2641
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2642
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2643
iconRight
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2644
    ^ iconRight
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2645
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2646
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2647
iconRight:something
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2648
    iconRight := something.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2649
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2650
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2651
iconUp
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2652
    ^ iconUp
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2653
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2654
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2655
iconUp:something
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2656
    iconUp := something.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2657
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2658
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2659
iconUpDown
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2660
    ^ iconUpDown
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2661
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2662
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2663
iconUpDown:something
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2664
    iconUpDown := something.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2665
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2666
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2667
level
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2668
    ^ level
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2669
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2670
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2671
level:something
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2672
    level := something.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2673
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2674
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2675
mode
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2676
    ^ mode
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2677
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2678
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2679
mode:something
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2680
    mode := something.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2681
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2682
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2683
selectedLevel
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2684
    ^ selectedLevel
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2685
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2686
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2687
selectedLevel:something
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2688
    selectedLevel := something.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2689
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2690
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2691
width
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2692
    ^ width
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2693
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2694
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2695
width:something
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2696
    width := something.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2697
! !
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2698
6240
7b9e4c7a90e0 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  2699
!VariablePanel::SnapAdornment methodsFor:'accessing-color & font'!
7b9e4c7a90e0 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  2700
7b9e4c7a90e0 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  2701
selectedBgColor
7b9e4c7a90e0 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  2702
    ^ selectedBgColor
7b9e4c7a90e0 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  2703
!
7b9e4c7a90e0 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  2704
7b9e4c7a90e0 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  2705
selectedBgColor:something
7b9e4c7a90e0 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  2706
    selectedBgColor := something.
7b9e4c7a90e0 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  2707
! !
7b9e4c7a90e0 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  2708
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2709
!VariablePanel::SnapAdornment methodsFor:'backward compatibility'!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2710
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2711
at:key 
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2712
    ^ self perform:key
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2713
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2714
    "Created: / 31-10-2010 / 12:38:58 / cg"
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2715
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2716
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2717
at:key ifAbsent:default
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2718
    |value|
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2719
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2720
    value := self perform:key.
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2721
    ^ value ? default
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2722
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2723
    "Created: / 31-10-2010 / 12:41:10 / cg"
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2724
!
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2725
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2726
at:key put:aValue
4942
a6899e1944b3 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 4920
diff changeset
  2727
    self perform:key asMutator with:aValue
4187
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2728
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2729
    "Created: / 31-10-2010 / 12:38:48 / cg"
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2730
! !
16652b9859a7 snapAdornment stuff cleanup
Claus Gittinger <cg@exept.de>
parents: 4043
diff changeset
  2731
871
541b8f9e8237 add label to vertical panel
ca
parents: 826
diff changeset
  2732
!VariablePanel class methodsFor:'documentation'!
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2733
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2734
version
5465
04d76a5e92aa #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 5350
diff changeset
  2735
    ^ '$Header$'
4043
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  2736
!
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  2737
9e0d97fd4b21 changed: #examples
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  2738
version_CVS
5465
04d76a5e92aa #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 5350
diff changeset
  2739
    ^ '$Header$'
295
aa5887bff1b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2740
! !
4624
e3867912ecd4 class: VariablePanel
Claus Gittinger <cg@exept.de>
parents: 4433
diff changeset
  2741