ScrollableView.st
author Stefan Vogel <sv@exept.de>
Wed, 19 Mar 1997 16:43:47 +0100
changeset 1135 acdeed6efc13
parent 1134 f4f1e67f1ff2
child 1136 03b7ccb2710c
permissions -rw-r--r--
Fix prev fix from cg. Send setupDimensions only if scrolledView is set.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
     1
"
5
claus
parents: 3
diff changeset
     2
 COPYRIGHT (c) 1989 by Claus Gittinger
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
     3
              All Rights Reserved
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
     4
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
     5
 This software is furnished under a license and may be used
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
     6
 only in accordance with the terms of that license and with the
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
     8
 be provided or otherwise made available to, or used by, any
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
     9
 other person.  No title to or ownership of the software is
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
    10
 hereby transferred.
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
    11
"
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
    12
119
claus
parents: 113
diff changeset
    13
SimpleView subclass:#ScrollableView
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
    14
	instanceVariableNames:'scrolledView vScrollBar hScrollBar scrollBarPosition lockUpdates
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
    15
		hideScrollBars hasHorizontalScrollBar hasVerticalScrollBar
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
    16
		horizontalMini verticalMini vScrollBarHidden hScrollBarHidden'
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
    17
	classVariableNames:'DefaultScrolledViewLevel DefaultScrolledViewMargin
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
    18
		DefaultScrollBarSpacing DefaultScrolledViewBorderWidth
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
    19
		DefaultLevel DefaultScrollBarLevel MyDefaultViewBackgroundColor'
444
ef26eba8c854 added style resource directive
Claus Gittinger <cg@exept.de>
parents: 300
diff changeset
    20
	poolDictionaries:''
ef26eba8c854 added style resource directive
Claus Gittinger <cg@exept.de>
parents: 300
diff changeset
    21
	category:'Views-Basic'
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
    22
!
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
    23
852
3d828d54ebee checkin from browser
Claus Gittinger <cg@exept.de>
parents: 819
diff changeset
    24
!ScrollableView class methodsFor:'documentation'!
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
    25
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
    26
copyright
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
    27
"
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
    28
 COPYRIGHT (c) 1989 by Claus Gittinger
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
    29
              All Rights Reserved
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
    30
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
    31
 This software is furnished under a license and may be used
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
    32
 only in accordance with the terms of that license and with the
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
    33
 inclusion of the above copyright notice.   This software may not
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
    34
 be provided or otherwise made available to, or used by, any
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
    35
 other person.  No title to or ownership of the software is
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
    36
 hereby transferred.
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
    37
"
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
    38
!
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
    39
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
    40
documentation
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
    41
"
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
    42
    a view containing a scrollbar and some other (slave-)view.
130
claus
parents: 122
diff changeset
    43
    This view wraps scrollbar(s) around the view to be scrolled.
65
b33e4f3a264e *** empty log message ***
claus
parents: 63
diff changeset
    44
    The scrollbars are setup to send scrollUp/scrollDown/scrollVerticalTo
b33e4f3a264e *** empty log message ***
claus
parents: 63
diff changeset
    45
    and scrollLeft/scrollRight/scrollHorizontalTo- messages whenever moved.
130
claus
parents: 122
diff changeset
    46
    The view itself has to implement these (there is a default implementation
65
b33e4f3a264e *** empty log message ***
claus
parents: 63
diff changeset
    47
    in the common View class for this.
b33e4f3a264e *** empty log message ***
claus
parents: 63
diff changeset
    48
b33e4f3a264e *** empty log message ***
claus
parents: 63
diff changeset
    49
    For the scrollbars to know about the full (maximum) size, the view
b33e4f3a264e *** empty log message ***
claus
parents: 63
diff changeset
    50
    must implement #heightOfContents and/or #widthOfContents.
130
claus
parents: 122
diff changeset
    51
    The values returned by these methods are used to compute the fraction
claus
parents: 122
diff changeset
    52
    which is visible (i.e. the scrollers thumb heights).
65
b33e4f3a264e *** empty log message ***
claus
parents: 63
diff changeset
    53
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
    54
    There are two ways to create a ScrollableView:
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
    55
    if the type of the view to be scrolled is known in advance,
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
    56
    use:
584
e3b11115fc18 documentation
Claus Gittinger <cg@exept.de>
parents: 572
diff changeset
    57
        v := ScrollableView for:<ViewClass>
130
claus
parents: 122
diff changeset
    58
    or:
584
e3b11115fc18 documentation
Claus Gittinger <cg@exept.de>
parents: 572
diff changeset
    59
        v := ScrollableView for:<ViewClass> in:someSuperView
65
b33e4f3a264e *** empty log message ***
claus
parents: 63
diff changeset
    60
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
    61
    otherwise, create the scrollableView empty with:
130
claus
parents: 122
diff changeset
    62
584
e3b11115fc18 documentation
Claus Gittinger <cg@exept.de>
parents: 572
diff changeset
    63
        v := ScrollableView new
130
claus
parents: 122
diff changeset
    64
    or:
584
e3b11115fc18 documentation
Claus Gittinger <cg@exept.de>
parents: 572
diff changeset
    65
        v := ScrollableView in:someSuperView
130
claus
parents: 122
diff changeset
    66
65
b33e4f3a264e *** empty log message ***
claus
parents: 63
diff changeset
    67
    and define the view later with:
130
claus
parents: 122
diff changeset
    68
584
e3b11115fc18 documentation
Claus Gittinger <cg@exept.de>
parents: 572
diff changeset
    69
        v scrolledView:aViewToBeScrolled
65
b33e4f3a264e *** empty log message ***
claus
parents: 63
diff changeset
    70
130
claus
parents: 122
diff changeset
    71
    Finally, if the view to be scrolled has been already created,
claus
parents: 122
diff changeset
    72
    use:
claus
parents: 122
diff changeset
    73
584
e3b11115fc18 documentation
Claus Gittinger <cg@exept.de>
parents: 572
diff changeset
    74
        v := ScrollableView forView:aViewToBeScrolled
130
claus
parents: 122
diff changeset
    75
    or:    
584
e3b11115fc18 documentation
Claus Gittinger <cg@exept.de>
parents: 572
diff changeset
    76
        v := ScrollableView forView:aViewToBeScrolled in:someSuperView
65
b33e4f3a264e *** empty log message ***
claus
parents: 63
diff changeset
    77
130
claus
parents: 122
diff changeset
    78
    It is also possible to change the scrolledView later (even multiple times).
claus
parents: 122
diff changeset
    79
    This may be useful, if different views are needed to display different types
claus
parents: 122
diff changeset
    80
    of data (see example2) and at creation time, it is not known what type
claus
parents: 122
diff changeset
    81
    of view is required (multimedia applications).
claus
parents: 122
diff changeset
    82
claus
parents: 122
diff changeset
    83
    If you want to scroll views (instead of a views contents), you need a 
claus
parents: 122
diff changeset
    84
    companion class (ViewScroller). See the documentation there.
65
b33e4f3a264e *** empty log message ***
claus
parents: 63
diff changeset
    85
b33e4f3a264e *** empty log message ***
claus
parents: 63
diff changeset
    86
    If you need horizontal scrolling too, use an instance of HVScrollableView.
113
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
    87
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
    88
    By default, scrollbars are full size scrollbars - for horizontal scrolling
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
    89
    (which is less often used), scrollableViews can optionally be created with
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
    90
    miniscrollers which take up less screen space.
130
claus
parents: 122
diff changeset
    91
claus
parents: 122
diff changeset
    92
    TODO:
584
e3b11115fc18 documentation
Claus Gittinger <cg@exept.de>
parents: 572
diff changeset
    93
        this is pretty old and needs a rewrite. There are quite some
e3b11115fc18 documentation
Claus Gittinger <cg@exept.de>
parents: 572
diff changeset
    94
        historic leftovers found here and things can be done better
e3b11115fc18 documentation
Claus Gittinger <cg@exept.de>
parents: 572
diff changeset
    95
        (especially in initializeFor...)
e3b11115fc18 documentation
Claus Gittinger <cg@exept.de>
parents: 572
diff changeset
    96
e3b11115fc18 documentation
Claus Gittinger <cg@exept.de>
parents: 572
diff changeset
    97
        Also, it should be rewritten into one class which supports both
e3b11115fc18 documentation
Claus Gittinger <cg@exept.de>
parents: 572
diff changeset
    98
        Vertical-only, Horizontal-only and HV scrolling.
e3b11115fc18 documentation
Claus Gittinger <cg@exept.de>
parents: 572
diff changeset
    99
        Currently, horizontal-only scrolling is not available.
e3b11115fc18 documentation
Claus Gittinger <cg@exept.de>
parents: 572
diff changeset
   100
        (you have to write your own class ...)
130
claus
parents: 122
diff changeset
   101
584
e3b11115fc18 documentation
Claus Gittinger <cg@exept.de>
parents: 572
diff changeset
   102
        Finally, some means to hide scrollbars should be added - this would
e3b11115fc18 documentation
Claus Gittinger <cg@exept.de>
parents: 572
diff changeset
   103
        give more screenspace to the view when all is visible 
e3b11115fc18 documentation
Claus Gittinger <cg@exept.de>
parents: 572
diff changeset
   104
        (and therefore, the scrollbars are not needed, anyway)
e3b11115fc18 documentation
Claus Gittinger <cg@exept.de>
parents: 572
diff changeset
   105
e3b11115fc18 documentation
Claus Gittinger <cg@exept.de>
parents: 572
diff changeset
   106
        Expect the above things to be fixed in an upcoming version.
130
claus
parents: 122
diff changeset
   107
584
e3b11115fc18 documentation
Claus Gittinger <cg@exept.de>
parents: 572
diff changeset
   108
    [author:]
e3b11115fc18 documentation
Claus Gittinger <cg@exept.de>
parents: 572
diff changeset
   109
        Claus Gittinger
130
claus
parents: 122
diff changeset
   110
584
e3b11115fc18 documentation
Claus Gittinger <cg@exept.de>
parents: 572
diff changeset
   111
    [see also:]
e3b11115fc18 documentation
Claus Gittinger <cg@exept.de>
parents: 572
diff changeset
   112
        ScrollBar Scroller
e3b11115fc18 documentation
Claus Gittinger <cg@exept.de>
parents: 572
diff changeset
   113
         HVScrollableView
63
f4eaf04d1eaf *** empty log message ***
claus
parents: 59
diff changeset
   114
"
f4eaf04d1eaf *** empty log message ***
claus
parents: 59
diff changeset
   115
!
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
   116
63
f4eaf04d1eaf *** empty log message ***
claus
parents: 59
diff changeset
   117
examples
f4eaf04d1eaf *** empty log message ***
claus
parents: 59
diff changeset
   118
"
65
b33e4f3a264e *** empty log message ***
claus
parents: 63
diff changeset
   119
    example1 (simple scrolled text):
591
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   120
                                                                        [exBegin]
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   121
        |top scr txt|
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   122
591
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   123
        top := StandardSystemView label:'scroll example1'.
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   124
        top extent:200@100.
113
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   125
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   126
        scr := NewScrollableView for:EditTextView in:top.
591
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   127
        scr origin:0.0@0.0 corner:1.0@1.0.
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   128
        txt := scr scrolledView.
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
   129
591
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   130
        txt list:#('line1'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   131
                   'line2'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   132
                   'line3'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   133
                   'line4'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   134
                   'line5'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   135
                   'line7'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   136
                   'line8'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   137
                   'line9'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   138
                   'line10'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   139
                  ).
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   140
        top open
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   141
                                                                        [exEnd]
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
   142
65
b33e4f3a264e *** empty log message ***
claus
parents: 63
diff changeset
   143
b33e4f3a264e *** empty log message ***
claus
parents: 63
diff changeset
   144
    example2 (changing the scrolledView later):
591
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   145
                                                                        [exBegin]
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   146
        |top scr txtView1 txtView2 browserView|
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
   147
591
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   148
        top := StandardSystemView label:'scroll example2'.
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   149
        top extent:300@100.
113
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   150
591
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   151
        scr := ScrollableView in:top.
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   152
        scr origin:0.0@0.0 corner:1.0@1.0.
113
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   153
591
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   154
        top open.
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   155
591
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   156
        (Delay forSeconds:5) wait.
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
   157
591
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   158
        txtView1 := EditTextView new.
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   159
        txtView1 list:#(
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   160
                        'wait 5 seconds to see the other text'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   161
                        'line2'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   162
                        'line3'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   163
                        'line4'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   164
                        'line5'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   165
                        'line7'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   166
                        'line8'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   167
                        'line9'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   168
                        'line10'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   169
                  ).
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   170
        scr scrolledView:txtView1.
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
   171
591
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   172
        (Delay forSeconds:5) wait.
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
   173
591
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   174
        txtView2 := EditTextView new.
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   175
        txtView2 list:#('this is the other views text' 
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   176
                        'alternative line2'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   177
                        'alternative line3'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   178
                        'alternative line4'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   179
                        'alternative line5'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   180
                        'alternative line6').
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   181
        scr scrolledView:txtView2.
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   182
                                                                        [exEnd]
113
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   183
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   184
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   185
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   186
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   187
    example3 (using a miniscroller):
591
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   188
                                                                        [exBegin]
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   189
        |top scr txt|
113
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   190
591
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   191
        top := StandardSystemView label:'scroll example3'.
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   192
        top extent:200@100.
113
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   193
591
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   194
        scr := ScrollableView for:EditTextView miniScroller:true in:top.
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   195
        scr origin:0.0@0.0 corner:1.0@1.0.
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   196
        txt := scr scrolledView.
113
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   197
591
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   198
        txt list:#('line1'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   199
                   'line2'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   200
                   'line3'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   201
                   'line4'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   202
                   'line5'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   203
                   'line7'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   204
                   'line8'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   205
                   'line9'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   206
                   'line10'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   207
                  ).
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   208
        top open
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   209
                                                                        [exEnd]
113
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   210
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   211
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   212
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   213
    example4 (scrolling in both directions):
591
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   214
                                                                        [exBegin]
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   215
        |top scr txt|
113
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   216
591
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   217
        top := StandardSystemView label:'scroll example4'.
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   218
        top extent:200@100.
113
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   219
591
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   220
        scr := HVScrollableView for:EditTextView in:top.
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   221
        scr origin:0.0@0.0 corner:1.0@1.0.
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   222
        txt := scr scrolledView.
113
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   223
591
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   224
        txt list:#('line1'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   225
                   'line2'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   226
                   'line3'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   227
                   'line4'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   228
                   'line5'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   229
                   'line7'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   230
                   'line8'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   231
                   'line9'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   232
                   'line10'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   233
                  ).
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   234
        top open
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   235
                                                                        [exEnd]
113
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   236
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   237
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   238
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   239
    example5 (using a full scroller vertically, miniscroller horizontally):
591
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   240
                                                                        [exBegin]
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   241
        |top scr txt|
113
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   242
591
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   243
        top := StandardSystemView label:'scroll example5'.
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   244
        top extent:200@100.
113
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   245
591
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   246
        scr := HVScrollableView for:EditTextView miniScrollerH:true in:top.
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   247
        scr origin:0.0@0.0 corner:1.0@1.0.
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   248
        txt := scr scrolledView.
113
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   249
591
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   250
        txt list:#('line1'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   251
                   'line2'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   252
                   'line3'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   253
                   'line4'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   254
                   'line5'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   255
                   'line7'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   256
                   'line8'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   257
                   'line9'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   258
                   'line10'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   259
                  ).
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   260
        top open
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   261
                                                                        [exEnd]
113
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   262
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   263
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   264
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   265
    example6 (using miniscrollers for both directions ):
591
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   266
                                                                        [exBegin]
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   267
        |top scr txt|
113
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   268
591
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   269
        top := StandardSystemView label:'scroll example6'.
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   270
        top extent:200@100.
113
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   271
591
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   272
        scr := HVScrollableView for:EditTextView miniScroller:true in:top.
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   273
        scr origin:0.0@0.0 corner:1.0@1.0.
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   274
        txt := scr scrolledView.
113
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   275
591
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   276
        txt list:#('line1'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   277
                   'line2'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   278
                   'line3'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   279
                   'line4'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   280
                   'line5'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   281
                   'line7'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   282
                   'line8'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   283
                   'line9'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   284
                   'line10'
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   285
                  ).
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   286
        top open
c746e5229f3d examples
Claus Gittinger <cg@exept.de>
parents: 584
diff changeset
   287
                                                                        [exEnd]
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
   288
"
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
   289
! !
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   290
852
3d828d54ebee checkin from browser
Claus Gittinger <cg@exept.de>
parents: 819
diff changeset
   291
!ScrollableView class methodsFor:'instance creation'!
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   292
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   293
for:aViewClass
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   294
    "return a new scrolling view scrolling an instance of aViewClass.
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   295
     The subview is created here.
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   296
     The view will have full scrollbars."
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   297
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   298
    ^ self 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   299
        for:aViewClass
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   300
        hasHorizontalScrollBar:(self == HVScrollableView)
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   301
        hasVerticalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   302
        miniScrollerH:false 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   303
        miniScrollerV:false 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   304
        origin:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   305
        corner:nil 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   306
        in:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   307
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   308
    "Created: 6.3.1997 / 18:06:22 / cg"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   309
    "Modified: 6.3.1997 / 23:18:32 / cg"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   310
!
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   311
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   312
for:aViewClass hasHorizontalScrollBar:hasH hasVerticalScrollBar:hasV miniScrollerH:miniH miniScrollerV:miniV origin:org corner:corn in:aView
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   313
    "return a new scrolling view scrolling an instance of aViewClass.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   314
     The subview is created here.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   315
     The view will have full scrollbars if the corresponding miniH/miniV
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   316
     is false, miniscrollers if true."
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   317
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   318
    |newView|
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   319
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   320
    aViewClass notNil ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   321
        newView := aViewClass new.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   322
    ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   323
    ^ self
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   324
        forView:newView
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   325
        hasHorizontalScrollBar:hasH 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   326
        hasVerticalScrollBar:hasV 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   327
        miniScrollerH:miniH 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   328
        miniScrollerV:miniV 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   329
        origin:org 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   330
        corner:corn 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   331
        in:aView
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   332
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   333
    "
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   334
     |top scr|
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   335
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   336
     top := StandardSystemView extent:200@200.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   337
     scr := NewScrollableView for:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   338
                 hasHorizontalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   339
                 hasVerticalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   340
                 miniScrollerH:false
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   341
                 miniScrollerV:false
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   342
                 origin:0.0@0.0
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   343
                 corner:1.0@1.0
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   344
                 in:top.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   345
     top open
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   346
    "
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   347
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   348
    "Modified: 6.3.1997 / 18:36:01 / cg"
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   349
!
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   350
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   351
for:aViewClass in:aView
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   352
    "return a new scrolling view scrolling an instance of aViewClass.
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   353
     The subview is created here.
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   354
     The view will have full scrollbars."
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   355
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   356
    ^ self 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   357
        for:aViewClass
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   358
        hasHorizontalScrollBar:(self == HVScrollableView)
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   359
        hasVerticalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   360
        miniScrollerH:false 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   361
        miniScrollerV:false 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   362
        origin:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   363
        corner:nil 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   364
        in:aView
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   365
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   366
    "Modified: 6.3.1997 / 23:18:41 / cg"
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   367
!
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   368
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   369
for:aViewClass miniScroller:mini
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   370
    "return a new scrolling view scrolling an instance of aViewClass.
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   371
     The subview is created here.
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   372
     The view will have full scrollbars if mini is false, miniscrollers
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   373
     if true."
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   374
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   375
    ^ self 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   376
        for:aViewClass
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   377
        hasHorizontalScrollBar:(self == HVScrollableView)
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   378
        hasVerticalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   379
        miniScrollerH:mini 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   380
        miniScrollerV:mini 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   381
        origin:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   382
        corner:nil 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   383
        in:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   384
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   385
    "Modified: 6.3.1997 / 23:18:45 / cg"
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   386
!
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   387
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   388
for:aViewClass miniScroller:mini in:aView
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   389
    "return a new scrolling view scrolling an instance of aViewClass.
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   390
     The subview is created here.
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   391
     The view will have full scrollbars if mini is false, miniscrollers
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   392
     if true."
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   393
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   394
    ^ self 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   395
        for:aViewClass
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   396
        hasHorizontalScrollBar:(self == HVScrollableView)
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   397
        hasVerticalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   398
        miniScrollerH:mini 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   399
        miniScrollerV:mini 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   400
        origin:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   401
        corner:nil 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   402
        in:aView
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   403
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   404
    "Modified: 6.3.1997 / 23:18:50 / cg"
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   405
!
153
claus
parents: 132
diff changeset
   406
546
b643875bda30 more inst creation variations
Claus Gittinger <cg@exept.de>
parents: 492
diff changeset
   407
for:aViewClass miniScroller:mini origin:org corner:corn in:aView
b643875bda30 more inst creation variations
Claus Gittinger <cg@exept.de>
parents: 492
diff changeset
   408
    "return a new scrolling view scrolling an instance of aViewClass.
b643875bda30 more inst creation variations
Claus Gittinger <cg@exept.de>
parents: 492
diff changeset
   409
     The subview is created here.
b643875bda30 more inst creation variations
Claus Gittinger <cg@exept.de>
parents: 492
diff changeset
   410
     The view will have full scrollbars if mini is false, miniscrollers
b643875bda30 more inst creation variations
Claus Gittinger <cg@exept.de>
parents: 492
diff changeset
   411
     if true."
b643875bda30 more inst creation variations
Claus Gittinger <cg@exept.de>
parents: 492
diff changeset
   412
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   413
    ^ self 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   414
        for:aViewClass
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   415
        hasHorizontalScrollBar:(self == HVScrollableView)
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   416
        hasVerticalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   417
        miniScrollerH:mini 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   418
        miniScrollerV:mini 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   419
        origin:org
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   420
        corner:corn 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   421
        in:aView
546
b643875bda30 more inst creation variations
Claus Gittinger <cg@exept.de>
parents: 492
diff changeset
   422
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   423
    "Modified: 6.3.1997 / 23:18:53 / cg"
546
b643875bda30 more inst creation variations
Claus Gittinger <cg@exept.de>
parents: 492
diff changeset
   424
!
b643875bda30 more inst creation variations
Claus Gittinger <cg@exept.de>
parents: 492
diff changeset
   425
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   426
for:aViewClass miniScrollerH:miniH
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   427
    "return a new scrolling view scrolling an instance of aViewClass.
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   428
     The subview is created here.
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   429
     The view will have full scrollbars if miniH is false, 
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   430
     and a horizontal miniscroller if true."
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   431
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   432
     ^ self 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   433
        for:aViewClass
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   434
        hasHorizontalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   435
        hasVerticalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   436
        miniScrollerH:miniH 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   437
        miniScrollerV:false
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   438
        origin:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   439
        corner:nil 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   440
        in:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   441
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   442
    "Modified: 6.3.1997 / 18:30:15 / cg"
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   443
!
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   444
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   445
for:aViewClass miniScrollerH:miniH in:aView
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   446
    "return a new scrolling view scrolling an instance of aViewClass.
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   447
     The subview is created here.
546
b643875bda30 more inst creation variations
Claus Gittinger <cg@exept.de>
parents: 492
diff changeset
   448
     The view will have full scrollbars if the corresponding miniH/miniV
b643875bda30 more inst creation variations
Claus Gittinger <cg@exept.de>
parents: 492
diff changeset
   449
     is false, miniscrollers if true."
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   450
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   451
     ^ self 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   452
        for:aViewClass
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   453
        hasHorizontalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   454
        hasVerticalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   455
        miniScrollerH:miniH 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   456
        miniScrollerV:false
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   457
        origin:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   458
        corner:nil 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   459
        in:aView
546
b643875bda30 more inst creation variations
Claus Gittinger <cg@exept.de>
parents: 492
diff changeset
   460
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   461
    "Modified: 6.3.1997 / 18:30:31 / cg"
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   462
!
153
claus
parents: 132
diff changeset
   463
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   464
for:aViewClass miniScrollerH:miniH miniScrollerV:miniV
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   465
    "return a new scrolling view scrolling an instance of aViewClass.
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   466
     The subview is created here.
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   467
     The view will have full scrollbars if the corresponding miniH/miniV
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   468
     is false, miniscrollers if true."
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   469
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   470
     ^ self 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   471
        for:aViewClass
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   472
        hasHorizontalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   473
        hasVerticalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   474
        miniScrollerH:miniH 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   475
        miniScrollerV:miniV
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   476
        origin:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   477
        corner:nil 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   478
        in:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   479
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   480
    "Modified: 6.3.1997 / 18:30:47 / cg"
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   481
!
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   482
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   483
for:aViewClass miniScrollerH:miniH miniScrollerV:miniV in:aView
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   484
    "return a new scrolling view scrolling an instance of aViewClass.
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   485
     The subview is created here.
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   486
     The view will have full scrollbars if the corresponding miniH/miniV
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   487
     is false, miniscrollers if true."
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   488
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   489
     ^ self 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   490
        for:aViewClass
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   491
        hasHorizontalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   492
        hasVerticalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   493
        miniScrollerH:miniH 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   494
        miniScrollerV:miniV
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   495
        origin:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   496
        corner:nil 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   497
        in:aView
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   498
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   499
    "Modified: 6.3.1997 / 18:31:02 / cg"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   500
!
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   501
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   502
for:aViewClass miniScrollerH:miniH miniScrollerV:miniV origin:org corner:corn in:aView
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   503
    "return a new scrolling view scrolling an instance of aViewClass.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   504
     The subview is created here.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   505
     The view will have full scrollbars if the corresponding miniH/miniV
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   506
     is false, miniscrollers if true."
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   507
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   508
     ^ self 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   509
        for:aViewClass
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   510
        hasHorizontalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   511
        hasVerticalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   512
        miniScrollerH:miniH 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   513
        miniScrollerV:miniV
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   514
        origin:org
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   515
        corner:corn 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   516
        in:aView
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   517
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   518
    "Modified: 6.3.1997 / 18:31:17 / cg"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   519
!
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   520
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   521
for:aViewClass miniScrollerH:miniH origin:org corner:corn in:aView
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   522
    "return a new scrolling view scrolling an instance of aViewClass.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   523
     The subview is created here.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   524
     The view will have a full horizontal scrollbar if miniH is false,
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   525
     a miniscroller if true."
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   526
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   527
     ^ self 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   528
        for:aViewClass
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   529
        hasHorizontalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   530
        hasVerticalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   531
        miniScrollerH:miniH 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   532
        miniScrollerV:false
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   533
        origin:org
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   534
        corner:corn 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   535
        in:aView
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   536
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   537
    "Modified: 6.3.1997 / 18:31:28 / cg"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   538
!
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   539
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   540
for:aViewClass miniScrollerV:miniV origin:org corner:corn in:aView
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   541
    "return a new scrolling view scrolling an instance of aViewClass.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   542
     The subview is created here.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   543
     The view will have a full vertical scrollbar if miniV is false,
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   544
     a miniscroller if true."
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   545
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   546
     ^ self 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   547
        for:aViewClass
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   548
        hasHorizontalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   549
        hasVerticalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   550
        miniScrollerH:false 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   551
        miniScrollerV:miniV
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   552
        origin:org
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   553
        corner:corn 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   554
        in:aView
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   555
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   556
    "Modified: 6.3.1997 / 18:31:41 / cg"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   557
!
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   558
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   559
for:aViewClass origin:org corner:corner in:aView
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   560
    "return a new scrolling view scrolling an instance of aViewClass.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   561
     The subview is created here.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   562
     The view will have full scrollbars."
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   563
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   564
     ^ self 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   565
        for:aViewClass
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   566
        hasHorizontalScrollBar:(self == HVScrollableView)
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   567
        hasVerticalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   568
        miniScrollerH:false 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   569
        miniScrollerV:false
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   570
        origin:org
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   571
        corner:corner 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   572
        in:aView
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   573
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   574
    "Modified: 6.3.1997 / 23:19:05 / cg"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   575
!
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   576
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   577
forView:aView
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   578
    "return a new scrolling view scrolling aView.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   579
     The view will have full scrollbars."
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   580
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   581
     ^ self 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   582
        forView:aView
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   583
        hasHorizontalScrollBar:(self == HVScrollableView)
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   584
        hasVerticalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   585
        miniScrollerH:false 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   586
        miniScrollerV:false
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   587
        origin:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   588
        corner:nil 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   589
        in:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   590
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   591
    "Modified: 6.3.1997 / 23:19:08 / cg"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   592
!
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   593
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   594
forView:aScrolledView hasHorizontalScrollBar:hasH hasVerticalScrollBar:hasV miniScrollerH:miniH miniScrollerV:miniV origin:org corner:corn in:aView
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   595
    "return a new scrolling view scrolling an instance of aViewClass.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   596
     The subview is created here.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   597
     The view will have full scrollbars if the corresponding miniH/miniV
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   598
     is false, miniscrollers if true."
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   599
300
0823ef38e629 adding/removing views to Panels
ah
parents: 248
diff changeset
   600
    |newView dev|
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   601
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   602
    aView notNil ifTrue:[
703
8889152157c9 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 678
diff changeset
   603
        dev := aView graphicsDevice
300
0823ef38e629 adding/removing views to Panels
ah
parents: 248
diff changeset
   604
    ] ifFalse:[ 
703
8889152157c9 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 678
diff changeset
   605
        dev := Screen current
300
0823ef38e629 adding/removing views to Panels
ah
parents: 248
diff changeset
   606
    ].
0823ef38e629 adding/removing views to Panels
ah
parents: 248
diff changeset
   607
    newView := self basicNew device:dev.
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   608
    newView initialize.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   609
    newView setupVertical:hasV mini:miniV horizontal:hasH mini:miniH.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   610
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   611
    aScrolledView notNil ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   612
        newView scrolledView:aScrolledView.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   613
    ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   614
1135
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
   615
<<<<<<< ScrView.st
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
   616
=======
1134
f4f1e67f1ff2 setupDimension late in realize
Claus Gittinger <cg@exept.de>
parents: 1126
diff changeset
   617
"/    newView setupDimensions.
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   618
1135
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
   619
>>>>>>> 1.53
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   620
    org notNil ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   621
        newView origin:org
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   622
    ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   623
    corn notNil ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   624
        newView corner:corn
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   625
    ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   626
300
0823ef38e629 adding/removing views to Panels
ah
parents: 248
diff changeset
   627
    aView notNil ifTrue:[
703
8889152157c9 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 678
diff changeset
   628
        aView addSubView:newView
153
claus
parents: 132
diff changeset
   629
    ].
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   630
    ^ newView
703
8889152157c9 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 678
diff changeset
   631
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   632
    "
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   633
     |top scr|
546
b643875bda30 more inst creation variations
Claus Gittinger <cg@exept.de>
parents: 492
diff changeset
   634
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   635
     top := StandardSystemView extent:200@200.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   636
     scr := NewScrollableView 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   637
                 forView:(TextView new)
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   638
                 hasHorizontalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   639
                 hasVerticalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   640
                 miniScrollerH:false
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   641
                 miniScrollerV:false
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   642
                 origin:0.0@0.0
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   643
                 corner:1.0@1.0
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   644
                 in:top.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   645
     top open
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   646
    "
546
b643875bda30 more inst creation variations
Claus Gittinger <cg@exept.de>
parents: 492
diff changeset
   647
1135
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
   648
<<<<<<< ScrView.st
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
   649
    "Modified: 6.3.1997 / 18:42:40 / cg"
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
   650
    "Modified: 19.3.1997 / 15:32:51 / stefan"
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
   651
=======
1134
f4f1e67f1ff2 setupDimension late in realize
Claus Gittinger <cg@exept.de>
parents: 1126
diff changeset
   652
    "Modified: 19.3.1997 / 15:16:37 / cg"
1135
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
   653
>>>>>>> 1.53
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   654
!
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   655
852
3d828d54ebee checkin from browser
Claus Gittinger <cg@exept.de>
parents: 819
diff changeset
   656
forView:aView in:aSuperView
3d828d54ebee checkin from browser
Claus Gittinger <cg@exept.de>
parents: 819
diff changeset
   657
    "return a new scrolling view scrolling aView.
3d828d54ebee checkin from browser
Claus Gittinger <cg@exept.de>
parents: 819
diff changeset
   658
     The view will have full scrollbars."
3d828d54ebee checkin from browser
Claus Gittinger <cg@exept.de>
parents: 819
diff changeset
   659
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   660
     ^ self 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   661
        forView:aView
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   662
        hasHorizontalScrollBar:(self == HVScrollableView)
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   663
        hasVerticalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   664
        miniScrollerH:false 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   665
        miniScrollerV:false
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   666
        origin:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   667
        corner:nil 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   668
        in:aSuperView
852
3d828d54ebee checkin from browser
Claus Gittinger <cg@exept.de>
parents: 819
diff changeset
   669
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   670
    "Modified: 6.3.1997 / 23:19:12 / cg"
852
3d828d54ebee checkin from browser
Claus Gittinger <cg@exept.de>
parents: 819
diff changeset
   671
!
3d828d54ebee checkin from browser
Claus Gittinger <cg@exept.de>
parents: 819
diff changeset
   672
248
c58fabf73c35 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 217
diff changeset
   673
forView:aView miniScrollerH:mini
c58fabf73c35 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 217
diff changeset
   674
    "return a new scrolling view scrolling aView.
c58fabf73c35 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 217
diff changeset
   675
     The view will have a full vertical scrollbar and a horizontal
c58fabf73c35 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 217
diff changeset
   676
     miniScroller if mini is true."
c58fabf73c35 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 217
diff changeset
   677
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   678
     ^ self 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   679
        forView:aView
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   680
        hasHorizontalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   681
        hasVerticalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   682
        miniScrollerH:mini 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   683
        miniScrollerV:false
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   684
        origin:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   685
        corner:nil 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   686
        in:nil
248
c58fabf73c35 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 217
diff changeset
   687
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   688
    "Modified: 6.3.1997 / 18:32:58 / cg"
248
c58fabf73c35 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 217
diff changeset
   689
!
c58fabf73c35 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 217
diff changeset
   690
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   691
forView:scrolledView miniScrollerH:miniH miniScrollerV:miniV in:aView
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   692
    "return a new scrolling view, scrolling aView.
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   693
     The view will have full scrollbars if the corresponding miniH/miniV
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   694
     is false, miniscrollers if true."
153
claus
parents: 132
diff changeset
   695
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   696
     ^ self 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   697
        forView:scrolledView
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   698
        hasHorizontalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   699
        hasVerticalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   700
        miniScrollerH:miniH 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   701
        miniScrollerV:miniV
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   702
        origin:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   703
        corner:nil 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   704
        in:aView
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   705
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   706
    "Modified: 6.3.1997 / 18:33:20 / cg"
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   707
!
153
claus
parents: 132
diff changeset
   708
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   709
in:aView
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   710
    "return a new scrolling view to be contained in aView.
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   711
     There is no slave view now - this has to be set later via
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   712
     the scrolledView: method.
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   713
     The view will have full scrollbars."
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   714
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   715
     ^ self 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   716
        forView:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   717
        hasHorizontalScrollBar:(self == HVScrollableView)
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   718
        hasVerticalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   719
        miniScrollerH:false 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   720
        miniScrollerV:false
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   721
        origin:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   722
        corner:nil 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   723
        in:aView
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   724
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   725
    "Modified: 6.3.1997 / 23:19:19 / cg"
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   726
!
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   727
93
f608d94e31ff *** empty log message ***
claus
parents: 77
diff changeset
   728
miniScroller:mini
f608d94e31ff *** empty log message ***
claus
parents: 77
diff changeset
   729
    "return a new scrolling view. The subview will be created later.
f608d94e31ff *** empty log message ***
claus
parents: 77
diff changeset
   730
     The view will have full scrollbars if mini is false, 
f608d94e31ff *** empty log message ***
claus
parents: 77
diff changeset
   731
     miniscrollers if true."
f608d94e31ff *** empty log message ***
claus
parents: 77
diff changeset
   732
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   733
     ^ self 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   734
        forView:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   735
        hasHorizontalScrollBar:(self == HVScrollableView)
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   736
        hasVerticalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   737
        miniScrollerH:mini 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   738
        miniScrollerV:mini
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   739
        origin:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   740
        corner:nil 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   741
        in:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   742
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   743
    "Modified: 6.3.1997 / 23:19:21 / cg"
93
f608d94e31ff *** empty log message ***
claus
parents: 77
diff changeset
   744
!
f608d94e31ff *** empty log message ***
claus
parents: 77
diff changeset
   745
113
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   746
miniScrollerH:miniH
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   747
    "return a new scrolling view. The subview will be created later.
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   748
     The view will have full scrollbars if miniH is false, 
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   749
     and a horizontal miniscroller if true."
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   750
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   751
     ^ self 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   752
        forView:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   753
        hasHorizontalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   754
        hasVerticalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   755
        miniScrollerH:miniH 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   756
        miniScrollerV:false
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   757
        origin:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   758
        corner:nil 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   759
        in:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   760
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   761
    "Modified: 6.3.1997 / 18:34:06 / cg"
113
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   762
!
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   763
93
f608d94e31ff *** empty log message ***
claus
parents: 77
diff changeset
   764
miniScrollerH:miniH miniScrollerV:miniV
f608d94e31ff *** empty log message ***
claus
parents: 77
diff changeset
   765
    "return a new scrolling view. The subview will be created later.
f608d94e31ff *** empty log message ***
claus
parents: 77
diff changeset
   766
     The view will have full scrollbars if the corresponding miniH/miniV
113
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   767
     is false, miniscrollers if true."
93
f608d94e31ff *** empty log message ***
claus
parents: 77
diff changeset
   768
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   769
     ^ self 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   770
        forView:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   771
        hasHorizontalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   772
        hasVerticalScrollBar:true
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   773
        miniScrollerH:miniH 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   774
        miniScrollerV:miniV
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   775
        origin:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   776
        corner:nil 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   777
        in:nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   778
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   779
    "Modified: 6.3.1997 / 18:34:16 / cg"
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   780
! !
93
f608d94e31ff *** empty log message ***
claus
parents: 77
diff changeset
   781
852
3d828d54ebee checkin from browser
Claus Gittinger <cg@exept.de>
parents: 819
diff changeset
   782
!ScrollableView class methodsFor:'defaults'!
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   783
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   784
updateStyleCache
444
ef26eba8c854 added style resource directive
Claus Gittinger <cg@exept.de>
parents: 300
diff changeset
   785
    "extract values from the styleSheet and cache them in class variables"
ef26eba8c854 added style resource directive
Claus Gittinger <cg@exept.de>
parents: 300
diff changeset
   786
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   787
    <resource: #style (#scrolledViewLevel #scrolledViewMargin)>
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   788
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   789
    |defLevel defMargin defSpacing|
444
ef26eba8c854 added style resource directive
Claus Gittinger <cg@exept.de>
parents: 300
diff changeset
   790
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   791
    StyleSheet is3D ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   792
        defLevel := -1.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   793
        defMargin := ViewSpacing // 2.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   794
        defSpacing := defMargin.
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   795
    ] ifFalse:[
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   796
        defLevel := 0.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   797
        defMargin := 0.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   798
        defSpacing := 0
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   799
    ].
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   800
    DefaultScrolledViewLevel := StyleSheet at:'scrolledViewLevel' default:defLevel.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   801
    DefaultScrolledViewBorderWidth := StyleSheet at:'scrolledViewBorderWidth' default:nil.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   802
    DefaultScrolledViewMargin := StyleSheet at:'scrolledViewMargin' default:defMargin.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   803
    DefaultScrollBarSpacing := StyleSheet at:'scrollBarSpacing' default:defSpacing.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   804
    DefaultLevel := StyleSheet at:'scrollableViewLevel' default:nil.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   805
    DefaultScrollBarLevel := StyleSheet at:'scrollBarLevel' default:nil.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   806
    MyDefaultViewBackgroundColor := StyleSheet at:'scrollableViewBackgroundColor' default:DefaultViewBackgroundColor.
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
   807
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   808
    "
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   809
     self updateStyleCache
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   810
    "
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   811
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   812
    "Modified: 7.3.1997 / 15:03:37 / cg"
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   813
! !
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   814
678
c1967a46b2c1 added query for lines/cols - prefExt
Claus Gittinger <cg@exept.de>
parents: 608
diff changeset
   815
!ScrollableView methodsFor:'accessing - components'!
119
claus
parents: 113
diff changeset
   816
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   817
horizontalScrollBar
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   818
    "return the horizontal scrollbar (or nil, if there is none)"
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   819
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   820
    ^ hScrollBar
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   821
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   822
    "Modified: 6.3.1997 / 16:59:24 / cg"
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   823
    "Created: 6.3.1997 / 18:06:23 / cg"
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   824
!
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   825
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   826
scrollBar
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   827
    "return the vertical scrollbar (or nil, if there is none)"
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   828
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   829
    ^ vScrollBar
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   830
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   831
    "Modified: 6.3.1997 / 16:59:29 / cg"
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   832
    "Created: 6.3.1997 / 18:06:23 / cg"
119
claus
parents: 113
diff changeset
   833
!
claus
parents: 113
diff changeset
   834
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   835
scrolledView
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   836
    "return the scrolled view (or nil, if there is none)"
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
   837
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   838
    ^ scrolledView
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   839
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   840
    "Modified: 6.3.1997 / 16:48:09 / cg"
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   841
    "Created: 6.3.1997 / 18:06:23 / cg"
113
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   842
!
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
   843
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   844
scrolledView:aView
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   845
    "set the view to scroll"
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   846
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   847
    scrolledView notNil ifTrue:[
982
bd9d2993a1be checkin from browser
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
   848
        scrolledView removeDependent:self.
814
5b80bc44f52b share code
Claus Gittinger <cg@exept.de>
parents: 799
diff changeset
   849
        scrolledView destroy.
5b80bc44f52b share code
Claus Gittinger <cg@exept.de>
parents: 799
diff changeset
   850
        scrolledView := nil.
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   851
    ].
982
bd9d2993a1be checkin from browser
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
   852
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   853
    scrolledView := aView.
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   854
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   855
    super addSubViewFirst:aView.
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   856
    scrolledView notNil ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   857
        self setScrollActions.
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   858
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   859
        realized ifTrue:[
1134
f4f1e67f1ff2 setupDimension late in realize
Claus Gittinger <cg@exept.de>
parents: 1126
diff changeset
   860
            self setupDimensions.
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   861
            self sizeChanged:nil.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   862
            scrolledView realize
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   863
        ].
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   864
    ]
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   865
1135
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
   866
<<<<<<< ScrView.st
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
   867
    "Modified: 7.3.1997 / 22:24:43 / cg"
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
   868
    "Modified: 19.3.1997 / 15:32:37 / stefan"
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
   869
=======
1134
f4f1e67f1ff2 setupDimension late in realize
Claus Gittinger <cg@exept.de>
parents: 1126
diff changeset
   870
    "Modified: 19.3.1997 / 15:08:18 / cg"
1135
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
   871
>>>>>>> 1.53
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   872
!
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   873
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   874
verticalScrollBar
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   875
    "return the vertical scrollbar (or nil, if there is none)"
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   876
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   877
    ^ vScrollBar
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   878
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   879
    "Modified: 6.3.1997 / 16:59:24 / cg"
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
   880
    "Created: 6.3.1997 / 18:06:23 / cg"
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   881
! !
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   882
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   883
!ScrollableView methodsFor:'accessing-look'!
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   884
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   885
hideScrollBars:aBoolean
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   886
    hideScrollBars := aBoolean.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   887
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   888
    "Created: 7.3.1997 / 21:57:23 / cg"
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   889
!
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   890
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   891
horizontalMini:aBoolean
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   892
    horizontalMini ~~ aBoolean ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   893
        horizontalMini := aBoolean.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   894
        self setupViews
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   895
    ].
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   896
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   897
    "Created: 7.3.1997 / 21:57:02 / cg"
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   898
    "Modified: 7.3.1997 / 22:09:46 / cg"
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   899
!
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   900
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   901
horizontalScrollable:aBoolean
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   902
    hasHorizontalScrollBar ~~ aBoolean ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   903
        hasHorizontalScrollBar := aBoolean.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   904
        hScrollBarHidden := false.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   905
        self setupViews
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   906
    ].
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   907
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   908
    "Created: 7.3.1997 / 21:56:28 / cg"
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   909
    "Modified: 7.3.1997 / 22:10:21 / cg"
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   910
!
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   911
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   912
verticalMini:aBoolean
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   913
    verticalMini ~~ aBoolean ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   914
        verticalMini := aBoolean.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   915
        self setupViews
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   916
    ]
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   917
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   918
    "Created: 7.3.1997 / 21:56:57 / cg"
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   919
    "Modified: 7.3.1997 / 22:09:57 / cg"
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   920
!
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   921
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   922
verticalScrollable:aBoolean
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   923
    hasVerticalScrollBar ~~ aBoolean ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   924
        hasVerticalScrollBar := aBoolean.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   925
        vScrollBarHidden := false.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   926
        self setupViews
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   927
    ]
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   928
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   929
    "Created: 7.3.1997 / 21:56:39 / cg"
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   930
    "Modified: 7.3.1997 / 22:10:39 / cg"
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   931
! !
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   932
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   933
!ScrollableView methodsFor:'changes '!
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   934
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   935
update:something with:argument from:changedObject
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   936
    "whenever the scrolledView changes its contents, the scroller(s) must
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   937
     be updated as well"
132
claus
parents: 130
diff changeset
   938
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   939
    changedObject == scrolledView ifTrue:[
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   940
        something == #sizeOfContents ifTrue:[
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   941
            vScrollBar notNil ifTrue:[
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   942
                vScrollBar setThumbFor:scrolledView.
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   943
            ].
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   944
            hScrollBar notNil ifTrue:[
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   945
                hScrollBar setThumbFor:scrolledView.
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   946
            ].
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   947
        ].
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   948
        something == #originOfContents ifTrue:[
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   949
            lockUpdates ifFalse:[
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   950
                vScrollBar notNil ifTrue:[
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   951
                    vScrollBar setThumbOriginFor:scrolledView.
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   952
                ].
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   953
                hScrollBar notNil ifTrue:[
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   954
                    hScrollBar setThumbOriginFor:scrolledView.
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   955
                ].
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   956
            ].
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
   957
        ].
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   958
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   959
        self updateScrollBarVisibility
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   960
    ].
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   961
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   962
    "Modified: 7.3.1997 / 22:22:15 / cg"
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   963
!
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   964
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   965
updateScrollBarVisibility
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   966
    "check if any scrollbar needs to be hidden or shown"
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   967
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   968
    |anyChange|
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   969
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   970
    hideScrollBars ifFalse:[^ self].
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   971
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   972
    anyChange := false.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   973
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   974
    vScrollBar notNil ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   975
        vScrollBar thumbHeight >= 100 ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   976
            vScrollBarHidden ifFalse:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   977
                vScrollBarHidden := true.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   978
                vScrollBar beInvisible.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   979
                anyChange := true.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   980
            ]
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   981
        ] ifFalse:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   982
            vScrollBarHidden ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   983
                vScrollBarHidden := false.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   984
                vScrollBar beVisible.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   985
                anyChange := true.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   986
            ]
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   987
        ]
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   988
    ].
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   989
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   990
    hScrollBar notNil ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   991
        hScrollBar thumbHeight >= 100 ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   992
            hScrollBarHidden ifFalse:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   993
                hScrollBarHidden := true.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   994
                hScrollBar beInvisible.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   995
                anyChange := true.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   996
            ]
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   997
        ] ifFalse:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   998
            hScrollBarHidden ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
   999
                hScrollBarHidden := false.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1000
                hScrollBar beVisible.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1001
                anyChange := true.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1002
            ]
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1003
        ]
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1004
    ].
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1005
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1006
    anyChange ifTrue:[
1134
f4f1e67f1ff2 setupDimension late in realize
Claus Gittinger <cg@exept.de>
parents: 1126
diff changeset
  1007
        realized ifTrue:[
f4f1e67f1ff2 setupDimension late in realize
Claus Gittinger <cg@exept.de>
parents: 1126
diff changeset
  1008
            self setupDimensions.
f4f1e67f1ff2 setupDimension late in realize
Claus Gittinger <cg@exept.de>
parents: 1126
diff changeset
  1009
        ].
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1010
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1011
        "/ force him to recompute its dimension ...
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1012
        scrolledView notNil ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1013
            vScrollBar notNil ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1014
                vScrollBar setThumbFor:scrolledView.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1015
            ].
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1016
            hScrollBar notNil ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1017
                hScrollBar setThumbFor:scrolledView.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1018
            ].
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1019
        ].
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1020
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1021
        "/ stupid - showing one may need the other ...
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1022
        "/ and vice versa; do it again.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1023
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1024
        anyChange := false.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1025
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1026
        vScrollBar notNil ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1027
            vScrollBar thumbHeight >= 100 ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1028
                vScrollBarHidden ifFalse:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1029
                    vScrollBarHidden := true.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1030
                    vScrollBar beInvisible.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1031
                    anyChange := true.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1032
                ]
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1033
            ] ifFalse:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1034
                vScrollBarHidden ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1035
                    vScrollBarHidden := false.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1036
                    vScrollBar beVisible.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1037
                    anyChange := true.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1038
                ]
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1039
            ]
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1040
        ].
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1041
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1042
        hScrollBar notNil ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1043
            hScrollBar thumbHeight >= 100 ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1044
                hScrollBarHidden ifFalse:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1045
                    hScrollBarHidden := true.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1046
                    hScrollBar beInvisible.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1047
                    anyChange := true.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1048
                ]
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1049
            ] ifFalse:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1050
                hScrollBarHidden ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1051
                    hScrollBarHidden := false.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1052
                    hScrollBar beVisible.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1053
                    anyChange := true.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1054
                ]
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1055
            ]
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1056
        ].
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1057
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1058
        anyChange ifTrue:[
1135
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
  1059
<<<<<<< ScrView.st
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
  1060
            realized ifTrue:[
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
  1061
                self setupDimensions.
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
  1062
            ].
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
  1063
        ].
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
  1064
=======
1134
f4f1e67f1ff2 setupDimension late in realize
Claus Gittinger <cg@exept.de>
parents: 1126
diff changeset
  1065
            realized ifTrue:[
f4f1e67f1ff2 setupDimension late in realize
Claus Gittinger <cg@exept.de>
parents: 1126
diff changeset
  1066
                self setupDimensions.
f4f1e67f1ff2 setupDimension late in realize
Claus Gittinger <cg@exept.de>
parents: 1126
diff changeset
  1067
            ]
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1068
        ]
1135
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
  1069
>>>>>>> 1.53
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1070
    ].
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1071
1135
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
  1072
<<<<<<< ScrView.st
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
  1073
    "Modified: 7.3.1997 / 22:58:56 / cg"
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
  1074
    "Modified: 19.3.1997 / 15:33:36 / stefan"
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
  1075
=======
1134
f4f1e67f1ff2 setupDimension late in realize
Claus Gittinger <cg@exept.de>
parents: 1126
diff changeset
  1076
    "Modified: 19.3.1997 / 15:09:23 / cg"
1135
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
  1077
>>>>>>> 1.53
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1078
! !
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
  1079
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1080
!ScrollableView methodsFor:'event processing'!
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1081
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1082
keyPress:key x:x y:y
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1083
    "a key was pressed - handle page-keys here"
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1084
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1085
    <resource: #keyboard ( #Prior #Next ) >
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1086
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1087
    (key == #Prior)    ifTrue: [^ self pageUp].
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1088
    (key == #Next)     ifTrue: [^ self pageDown].
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1089
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1090
    super keyPress:key x:x y:y
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1091
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1092
    "Created: 6.3.1997 / 18:06:23 / cg"
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
  1093
!
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
  1094
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1095
sizeChanged:how
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1096
    |orgX orgY scroll|
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1097
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1098
    "/ resize components manually, in an order which is optimal
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1099
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1100
    how == #smaller ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1101
        "/ first resize the horizontalScrollBar,
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1102
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1103
        scrolledView notNil ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1104
            scrolledView containerChangedSize
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1105
        ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1106
        hScrollBar notNil ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1107
            hScrollBar containerChangedSize
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1108
        ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1109
        vScrollBar notNil ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1110
            vScrollBar containerChangedSize
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1111
        ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1112
    ] ifFalse:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1113
        hScrollBar notNil ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1114
            hScrollBar containerChangedSize
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1115
        ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1116
        vScrollBar notNil ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1117
            vScrollBar containerChangedSize
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1118
        ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1119
        scrolledView notNil ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1120
            scrolledView containerChangedSize
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1121
        ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1122
    ].
819
32ac89843fa8 Send only one scroll message for horizontal and vertical scroll
Stefan Vogel <sv@exept.de>
parents: 814
diff changeset
  1123
32ac89843fa8 Send only one scroll message for horizontal and vertical scroll
Stefan Vogel <sv@exept.de>
parents: 814
diff changeset
  1124
    "/ The following action will be done in a atomic operation
32ac89843fa8 Send only one scroll message for horizontal and vertical scroll
Stefan Vogel <sv@exept.de>
parents: 814
diff changeset
  1125
    "/ in HVScrollableView
32ac89843fa8 Send only one scroll message for horizontal and vertical scroll
Stefan Vogel <sv@exept.de>
parents: 814
diff changeset
  1126
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1127
    scrolledView isNil ifTrue:[^ self].
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1128
    (hScrollBar isNil and:[vScrollBar isNil]) ifTrue:[^ self].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1129
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1130
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1131
    vScrollBar notNil ifTrue:[
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1132
        vScrollBar setThumbFor:scrolledView.
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1133
    ].
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1134
    hScrollBar notNil ifTrue:[
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1135
        hScrollBar setThumbFor:scrolledView.
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1136
    ].
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1137
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1138
    "/ splitted, since there are optimized scrollProcedures for each case ...
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1139
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1140
    hScrollBar isNil ifTrue:[
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1141
        "/ only care for vertical ...
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1142
        vScrollBar thumbOrigin + vScrollBar thumbHeight >= 100 ifTrue:[
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1143
            vScrollBar thumbOrigin:(100 - vScrollBar thumbHeight).
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1144
            scrolledView scrollVerticalToPercent:vScrollBar thumbOrigin.
819
32ac89843fa8 Send only one scroll message for horizontal and vertical scroll
Stefan Vogel <sv@exept.de>
parents: 814
diff changeset
  1145
        ].
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1146
    ] ifFalse:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1147
        vScrollBar isNil ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1148
            "/ only care for horizontal ...
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1149
            hScrollBar thumbOrigin + hScrollBar thumbHeight >= 100 ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1150
                hScrollBar thumbOrigin:(100 - hScrollBar thumbHeight).
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1151
                scrolledView scrollVerticalToPercent:hScrollBar thumbOrigin.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1152
            ].
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1153
        ] ifFalse:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1154
            "/ care for both ...
113
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
  1155
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1156
            orgY := vScrollBar thumbOrigin.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1157
            orgX := hScrollBar thumbOrigin.
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1158
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1159
            scroll := false.
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1160
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1161
            orgY + vScrollBar thumbHeight >= 100 ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1162
                vScrollBar thumbOrigin:(100 - vScrollBar thumbHeight).
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1163
                orgY := vScrollBar thumbOrigin.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1164
                scroll := true.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1165
            ].
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1166
            orgX + hScrollBar thumbHeight >= 100 ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1167
                hScrollBar thumbOrigin:(100 - hScrollBar thumbHeight).
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1168
                orgX := hScrollBar thumbOrigin.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1169
                scroll := true.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1170
            ].
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1171
            scroll ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1172
                scrolledView scrollToPercent:(orgX@orgY).
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1173
            ].
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1174
        ]
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1175
    ].
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1176
    self updateScrollBarVisibility.
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1177
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1178
    "Modified: 7.3.1997 / 22:18:23 / cg"
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1179
! !
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1180
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1181
!ScrollableView methodsFor:'forced scroll'!
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1182
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1183
pageDown
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1184
    "page down"
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1185
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1186
    vScrollBar notNil ifTrue:[
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1187
        vScrollBar pageDown
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1188
    ]
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1189
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1190
    "Modified: 6.3.1997 / 17:01:51 / cg"
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1191
    "Created: 6.3.1997 / 18:06:23 / cg"
113
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
  1192
!
fdd18cfff57e *** empty log message ***
claus
parents: 110
diff changeset
  1193
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1194
pageUp
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1195
    "page up"
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1196
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1197
    vScrollBar notNil ifTrue:[
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1198
        vScrollBar pageUp
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1199
    ]
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1200
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1201
    "Modified: 6.3.1997 / 17:01:58 / cg"
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1202
    "Created: 6.3.1997 / 18:06:23 / cg"
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1203
! !
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1204
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1205
!ScrollableView methodsFor:'initialization'!
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1206
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1207
initStyle
958
b75025112346 commentary
Claus Gittinger <cg@exept.de>
parents: 852
diff changeset
  1208
    "initialize style specifics"
b75025112346 commentary
Claus Gittinger <cg@exept.de>
parents: 852
diff changeset
  1209
608
aedd7bf72edc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 591
diff changeset
  1210
    <resource: #style (#scrollBarPosition)>
aedd7bf72edc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 591
diff changeset
  1211
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1212
    super initStyle.
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1213
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1214
    viewBackground := MyDefaultViewBackgroundColor. 
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1215
    scrollBarPosition := styleSheet at:'scrollBarPosition' default:#left.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1216
    hideScrollBars := styleSheet at:'scrollBarHiding' default:false.
608
aedd7bf72edc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 591
diff changeset
  1217
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1218
    "Created: 6.3.1997 / 18:06:23 / cg"
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1219
    "Modified: 7.3.1997 / 21:47:32 / cg"
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1220
!
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1221
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1222
realize
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1223
    super realize.
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
  1224
1134
f4f1e67f1ff2 setupDimension late in realize
Claus Gittinger <cg@exept.de>
parents: 1126
diff changeset
  1225
    self setupDimensions.
f4f1e67f1ff2 setupDimension late in realize
Claus Gittinger <cg@exept.de>
parents: 1126
diff changeset
  1226
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1227
    "since scrolledview may have done something to its contents
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1228
     during init-time we had no chance yet to catch contents-
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1229
     changes; do it now
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1230
    "
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
  1231
    scrolledView notNil ifTrue:[
1135
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
  1232
        self setupDimensions.
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1233
        vScrollBar notNil ifTrue:[
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1234
            vScrollBar setThumbFor:scrolledView
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1235
        ].
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1236
        hScrollBar notNil ifTrue:[
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1237
            hScrollBar setThumbFor:scrolledView
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1238
        ].
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1239
    ].
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1240
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1241
    self updateScrollBarVisibility
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1242
1135
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
  1243
<<<<<<< ScrView.st
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
  1244
    "Modified: 7.3.1997 / 22:22:33 / cg"
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
  1245
    "Modified: 19.3.1997 / 15:32:20 / stefan"
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
  1246
=======
1134
f4f1e67f1ff2 setupDimension late in realize
Claus Gittinger <cg@exept.de>
parents: 1126
diff changeset
  1247
    "Modified: 19.3.1997 / 15:07:56 / cg"
1135
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
  1248
>>>>>>> 1.53
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1249
!
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1250
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1251
releaseHorizontalScrollBar
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1252
    "destroy any horizontal scrollBar"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1253
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1254
    hScrollBar notNil ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1255
        hScrollBar destroy.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1256
        hScrollBar := nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1257
    ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1258
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1259
    "Modified: 6.3.1997 / 17:43:20 / cg"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1260
    "Created: 6.3.1997 / 18:06:23 / cg"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1261
!
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1262
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1263
releaseVerticalScrollBar
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1264
    "destroy any vertical scrollBar"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1265
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1266
    vScrollBar notNil ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1267
        vScrollBar destroy.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1268
        vScrollBar := nil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1269
    ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1270
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1271
    "Created: 6.3.1997 / 18:06:23 / cg"
1097
9f3ae8f08ffe checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1085
diff changeset
  1272
!
7
15a9291b9bd0 *** empty log message ***
claus
parents: 5
diff changeset
  1273
15a9291b9bd0 *** empty log message ***
claus
parents: 5
diff changeset
  1274
setScrollActions
15a9291b9bd0 *** empty log message ***
claus
parents: 5
diff changeset
  1275
    "lock prevents repositioning the scroller to the
15a9291b9bd0 *** empty log message ***
claus
parents: 5
diff changeset
  1276
     actual (often rounded) position while scrolling,
15a9291b9bd0 *** empty log message ***
claus
parents: 5
diff changeset
  1277
     and keeps it instead at the pointer position.
15a9291b9bd0 *** empty log message ***
claus
parents: 5
diff changeset
  1278
15a9291b9bd0 *** empty log message ***
claus
parents: 5
diff changeset
  1279
     (this avoids run-away scroller when scrolling
15a9291b9bd0 *** empty log message ***
claus
parents: 5
diff changeset
  1280
      textviews, when the text is aligned line-wise).
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
  1281
      Consider this as a kludge."
7
15a9291b9bd0 *** empty log message ***
claus
parents: 5
diff changeset
  1282
65
b33e4f3a264e *** empty log message ***
claus
parents: 63
diff changeset
  1283
    lockUpdates := false.
7
15a9291b9bd0 *** empty log message ***
claus
parents: 5
diff changeset
  1284
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1285
    vScrollBar notNil ifTrue:[
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1286
        vScrollBar scrollAction:[:position |
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1287
            lockUpdates := true.
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1288
            scrolledView scrollVerticalToPercent:position.
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1289
            lockUpdates := false
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1290
        ].
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1291
        vScrollBar scrollUpAction:[scrolledView scrollUp].
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1292
        vScrollBar scrollDownAction:[scrolledView scrollDown].
7
15a9291b9bd0 *** empty log message ***
claus
parents: 5
diff changeset
  1293
    ].
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1294
    hScrollBar notNil ifTrue:[
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1295
        hScrollBar scrollAction:[:position |
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1296
            lockUpdates := true.
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1297
            scrolledView scrollHorizontalToPercent:position.
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1298
            lockUpdates := false
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1299
        ].
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1300
        hScrollBar scrollUpAction:[scrolledView scrollLeft].
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1301
        hScrollBar scrollDownAction:[scrolledView scrollRight].
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1302
    ].
7
15a9291b9bd0 *** empty log message ***
claus
parents: 5
diff changeset
  1303
65
b33e4f3a264e *** empty log message ***
claus
parents: 63
diff changeset
  1304
    scrolledView addDependent:self.
814
5b80bc44f52b share code
Claus Gittinger <cg@exept.de>
parents: 799
diff changeset
  1305
5b80bc44f52b share code
Claus Gittinger <cg@exept.de>
parents: 799
diff changeset
  1306
    "
5b80bc44f52b share code
Claus Gittinger <cg@exept.de>
parents: 799
diff changeset
  1307
     pass my keyboard input (and other subviews input) 
5b80bc44f52b share code
Claus Gittinger <cg@exept.de>
parents: 799
diff changeset
  1308
     to the scrolled view ...
5b80bc44f52b share code
Claus Gittinger <cg@exept.de>
parents: 799
diff changeset
  1309
    "
5b80bc44f52b share code
Claus Gittinger <cg@exept.de>
parents: 799
diff changeset
  1310
    self delegate:(KeyboardForwarder toView:scrolledView).
5b80bc44f52b share code
Claus Gittinger <cg@exept.de>
parents: 799
diff changeset
  1311
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1312
    "Modified: 6.3.1997 / 17:03:43 / cg"
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1313
    "Created: 6.3.1997 / 18:06:23 / cg"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1314
!
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1315
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1316
setupDimensions
1113
c0933ddd159d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1111
diff changeset
  1317
    |scrolledViewMargin scrollBarSpacing
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1318
     scrolledViewLayout hScrollBarLayout vScrollBarLayout
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1319
     vBd         "{ Class: SmallInteger }"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1320
     hBd         "{ Class: SmallInteger }"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1321
     sBd         "{ Class: SmallInteger }"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1322
     wVScroll    "{ Class: SmallInteger }"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1323
     hHScroll    "{ Class: SmallInteger }"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1324
     hLeftOffs   "{ Class: SmallInteger }"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1325
     hRightOffs  "{ Class: SmallInteger }"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1326
     hTopOffs    "{ Class: SmallInteger }"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1327
     hBottomOffs "{ Class: SmallInteger }"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1328
     sLeftOffs   "{ Class: SmallInteger }"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1329
     sRightOffs  "{ Class: SmallInteger }"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1330
     sTopOffs    "{ Class: SmallInteger }"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1331
     sBottomOffs "{ Class: SmallInteger }"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1332
     vLeftOffs   "{ Class: SmallInteger }"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1333
     vRightOffs  "{ Class: SmallInteger }"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1334
     vTopOffs    "{ Class: SmallInteger }"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1335
     vBottomOffs "{ Class: SmallInteger }"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1336
     addMargin   "{ Class: SmallInteger }"|
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1337
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1338
    DefaultLevel notNil ifTrue:[self level:DefaultLevel].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1339
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1340
    sBd := 0.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1341
    DefaultScrolledViewBorderWidth notNil ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1342
        sBd := DefaultScrolledViewBorderWidth.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1343
        scrolledView notNil ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1344
            scrolledView borderWidth:DefaultScrolledViewBorderWidth.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1345
        ]
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1346
    ] ifFalse:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1347
        scrolledView notNil ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1348
            sBd := scrolledView borderWidth
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1349
        ]
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1350
    ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1351
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1352
    (vScrollBar notNil and:[vScrollBarHidden not]) ifTrue:[
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1353
        vBd := vScrollBar borderWidth.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1354
        wVScroll := vScrollBar widthIncludingBorder.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1355
    ] ifFalse:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1356
        vBd := wVScroll := 0.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1357
    ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1358
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1359
    (hScrollBar notNil and:[hScrollBarHidden not])  ifTrue:[
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1360
        hBd := hScrollBar borderWidth.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1361
        hHScroll := hScrollBar heightIncludingBorder.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1362
    ] ifFalse:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1363
        hBd := hHScroll := 0.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1364
    ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1365
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1366
    "/ the raw layout ...
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1367
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1368
    scrolledViewLayout := ((0.0 @ 0.0) corner:(1.0@1.0)) asLayout.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1369
    hScrollBarLayout := ((0.0 @ 1.0) corner:(1.0@1.0)) asLayout.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1370
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1371
    "/ the painful details; mostly complicated for 2D styles,
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1372
    "/ where the positions are setUp to overlay borders ...
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1373
    "/ (well, with 3D styles, a single pixel error will not be noticed;
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1374
    "/  but 2D styles are very sensitive to those;
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1375
    "/  the code below may not work correctly with different borderWidths).
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1376
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1377
    scrolledViewMargin := DefaultScrolledViewMargin.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1378
    scrollBarSpacing := DefaultScrollBarSpacing.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1379
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1380
    vTopOffs := 0 - vBd + scrolledViewMargin + margin.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1381
    scrolledViewMargin == 0 ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1382
        vBottomOffs := 0 + vBd - scrolledViewMargin - sBd.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1383
    ] ifFalse:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1384
        vBottomOffs := 0 + vBd - scrolledViewMargin + sBd.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1385
    ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1386
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1387
    hLeftOffs := 0 - hBd + scrolledViewMargin + margin.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1388
    hRightOffs := 0 + hBd - scrolledViewMargin - sBd.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1389
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1390
    sLeftOffs := 0 - hBd + scrolledViewMargin + margin.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1391
    sRightOffs := 0 + hBd - scrolledViewMargin - sBd - sBd - sBd.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1392
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1393
    scrolledViewMargin == 0 ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1394
        sTopOffs := 0 - sBd + margin.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1395
        sBottomOffs := 0 + sBd - sBd.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1396
    ] ifFalse:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1397
        sTopOffs := 0 + scrolledViewMargin + margin.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1398
        sBottomOffs := 0 + sBd - scrolledViewMargin - sBd - sBd - sBd.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1399
    ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1400
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1401
    addMargin := 0.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1402
"/    DefaultScrollBarLevel == DefaultScrolledViewLevel
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1403
"/        addMargin := 1.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1404
"/    ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1405
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1406
    (vScrollBar notNil and:[vScrollBarHidden not]) ifTrue:[
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1407
        scrollBarPosition == #right ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1408
            "/ right/bottom
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1409
            vScrollBarLayout := ((1.0 @ 0.0) corner:(1.0@1.0)) asLayout.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1410
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1411
            vRightOffs := 0 - scrolledViewMargin + margin "???".
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1412
            vLeftOffs := vRightOffs - wVScroll.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1413
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1414
            sRightOffs := sRightOffs - scrollBarSpacing - wVScroll + sBd.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1415
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1416
            hRightOffs := hRightOffs - wVScroll - scrollBarSpacing - sBd.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1417
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1418
            sRightOffs := sRightOffs - addMargin
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1419
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1420
        ] ifFalse:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1421
            "/ left/bottom
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1422
            vScrollBarLayout := ((0.0 @ 0.0) corner:(0.0@1.0)) asLayout.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1423
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1424
            vLeftOffs := 0 - vBd + scrolledViewMargin + margin.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1425
            vRightOffs := vLeftOffs + wVScroll + margin.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1426
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1427
            sLeftOffs := wVScroll + scrolledViewMargin + scrollBarSpacing + margin.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1428
            sRightOffs := 0 - scrolledViewMargin - margin.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1429
            hLeftOffs := hLeftOffs + wVScroll + vBd + scrollBarSpacing.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1430
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1431
            sLeftOffs := sLeftOffs + addMargin
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1432
        ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1433
    ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1434
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1435
    (hScrollBar notNil and:[hScrollBarHidden not]) ifTrue:[
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1436
        hBottomOffs := 0 - scrolledViewMargin - hBd + margin "???".
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1437
        hTopOffs := hBottomOffs - hHScroll.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1438
        scrolledViewMargin == 0 ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1439
            hTopOffs := hTopOffs + sBd + sBd
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1440
        ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1441
        sBottomOffs := sBottomOffs - scrollBarSpacing - hHScroll.
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1442
        (vScrollBar notNil and:[vScrollBarHidden not]) ifTrue:[
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1443
            vBottomOffs := vBottomOffs - scrollBarSpacing - hHScroll.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1444
        ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1445
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1446
        sBottomOffs := sBottomOffs - addMargin.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1447
        hRightOffs := hRightOffs - addMargin.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1448
    ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1449
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1450
    scrolledView notNil ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1451
        scrolledViewLayout leftOffset:sLeftOffs.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1452
        scrolledViewLayout rightOffset:sRightOffs.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1453
        scrolledViewLayout topOffset:sTopOffs.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1454
        scrolledViewLayout bottomOffset:sBottomOffs.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1455
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1456
        scrolledView level:DefaultScrolledViewLevel.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1457
        scrolledView layout:scrolledViewLayout.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1458
    ].
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1459
    (hScrollBar notNil and:[hScrollBarHidden not]) ifTrue:[
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1460
        hScrollBarLayout leftOffset:hLeftOffs.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1461
        hScrollBarLayout rightOffset:hRightOffs.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1462
        hScrollBarLayout topOffset:hTopOffs.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1463
        hScrollBarLayout bottomOffset:hBottomOffs.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1464
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1465
        hScrollBar level:DefaultScrollBarLevel.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1466
        hScrollBar layout:hScrollBarLayout
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1467
    ].
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1468
    (vScrollBar notNil and:[vScrollBarHidden not]) ifTrue:[
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1469
        vScrollBarLayout leftOffset:vLeftOffs.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1470
        vScrollBarLayout rightOffset:vRightOffs.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1471
        vScrollBarLayout topOffset:vTopOffs.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1472
        vScrollBarLayout bottomOffset:vBottomOffs.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1473
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1474
        vScrollBar level:DefaultScrollBarLevel.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1475
        vScrollBar layout:vScrollBarLayout
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1476
    ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1477
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1478
    "Created: 6.3.1997 / 18:06:23 / cg"
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1479
    "Modified: 7.3.1997 / 22:41:14 / cg"
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1480
!
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1481
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1482
setupVertical:isVertical mini:miniV horizontal:isHorizontal mini:miniH 
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1483
    "setup scrollbars as specified in the arguments"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1484
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1485
    |noMiniScrollers|
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1486
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1487
    vScrollBarHidden := hScrollBarHidden := false.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1488
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1489
    hasVerticalScrollBar := isVertical.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1490
    hasHorizontalScrollBar := isHorizontal.
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1491
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1492
    noMiniScrollers := styleSheet at:'scrollBarNeverMini' default:false.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1493
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1494
    verticalMini := miniV.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1495
    verticalMini ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1496
        noMiniScrollers ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1497
            verticalMini := false
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1498
        ]
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1499
    ].
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1500
    horizontalMini := miniH.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1501
    horizontalMini ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1502
        noMiniScrollers ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1503
            horizontalMini := false
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1504
        ]
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1505
    ].
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1506
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1507
    self setupViews.
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1508
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1509
    "Modified: 7.3.1997 / 22:09:12 / cg"
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1510
!
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1511
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1512
setupViews 
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1513
    "setup scrollbars as specified in the arguments"
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1514
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1515
    |cls|
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1516
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1517
    hasVerticalScrollBar ifTrue:[
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1518
        cls := ScrollBar. 
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1519
        verticalMini ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1520
            cls := MiniScroller
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1521
        ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1522
        (vScrollBar notNil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1523
        and:[vScrollBar class ~~ cls]) ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1524
            self releaseVerticalScrollBar
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1525
        ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1526
        vScrollBar isNil ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1527
            vScrollBar := cls in:self.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1528
        ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1529
        vScrollBar thumbOrigin:0 thumbHeight:100.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1530
    ] ifFalse:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1531
        vScrollBar notNil ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1532
            self releaseVerticalScrollBar
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1533
        ]
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1534
    ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1535
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1536
    hasHorizontalScrollBar ifTrue:[
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1537
        cls := HorizontalScrollBar. 
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1538
        horizontalMini ifTrue:[
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1539
            cls := HorizontalMiniScroller
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1540
        ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1541
        (hScrollBar notNil
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1542
        and:[hScrollBar class ~~ cls]) ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1543
            self releaseHorizontalScrollBar
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1544
        ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1545
        hScrollBar isNil ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1546
            hScrollBar := cls in:self.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1547
        ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1548
        hScrollBar thumbOrigin:0 thumbHeight:100.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1549
    ] ifFalse:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1550
        hScrollBar notNil ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1551
            self releaseHorizontalScrollBar
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1552
        ]
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1553
    ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1554
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1555
    scrolledView notNil ifTrue:[
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1556
        self setScrollActions.
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1557
    ]
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1558
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1559
    "Created: 6.3.1997 / 18:06:23 / cg"
1126
2c698745c81f added support for automatic scrollBar hiding.
Claus Gittinger <cg@exept.de>
parents: 1125
diff changeset
  1560
    "Modified: 7.3.1997 / 21:54:34 / cg"
7
15a9291b9bd0 *** empty log message ***
claus
parents: 5
diff changeset
  1561
! !
15a9291b9bd0 *** empty log message ***
claus
parents: 5
diff changeset
  1562
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1563
!ScrollableView methodsFor:'queries'!
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
  1564
819
32ac89843fa8 Send only one scroll message for horizontal and vertical scroll
Stefan Vogel <sv@exept.de>
parents: 814
diff changeset
  1565
isHorizontalScrollable
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1566
    "return true if I am horizontally scrollable"
819
32ac89843fa8 Send only one scroll message for horizontal and vertical scroll
Stefan Vogel <sv@exept.de>
parents: 814
diff changeset
  1567
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1568
    ^ hScrollBar notNil
819
32ac89843fa8 Send only one scroll message for horizontal and vertical scroll
Stefan Vogel <sv@exept.de>
parents: 814
diff changeset
  1569
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1570
    "Modified: 6.3.1997 / 17:03:49 / cg"
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1571
    "Created: 6.3.1997 / 18:06:23 / cg"
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1572
!
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1573
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1574
isVerticalScrollable
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1575
    "return true if I am vertically scrollable"
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1576
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1577
    ^ vScrollBar notNil
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1578
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1579
    "Modified: 6.3.1997 / 17:03:52 / cg"
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1580
    "Created: 6.3.1997 / 18:06:23 / cg"
819
32ac89843fa8 Send only one scroll message for horizontal and vertical scroll
Stefan Vogel <sv@exept.de>
parents: 814
diff changeset
  1581
!
32ac89843fa8 Send only one scroll message for horizontal and vertical scroll
Stefan Vogel <sv@exept.de>
parents: 814
diff changeset
  1582
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1583
preferredExtent
572
121735c2aff6 commentary
Claus Gittinger <cg@exept.de>
parents: 562
diff changeset
  1584
    "return my preferredExtent from the scrolledViews prefExtent
121735c2aff6 commentary
Claus Gittinger <cg@exept.de>
parents: 562
diff changeset
  1585
     plus the size of the scrollBar"
121735c2aff6 commentary
Claus Gittinger <cg@exept.de>
parents: 562
diff changeset
  1586
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1587
    |slavesPref prefX prefY|
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1588
799
64f8700489a4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 754
diff changeset
  1589
    "/ If I have an explicit preferredExtent ..
64f8700489a4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 754
diff changeset
  1590
713
0c38ad51016d care for preSet preferredExtent
Claus Gittinger <cg@exept.de>
parents: 703
diff changeset
  1591
    preferredExtent notNil ifTrue:[
0c38ad51016d care for preSet preferredExtent
Claus Gittinger <cg@exept.de>
parents: 703
diff changeset
  1592
        ^ preferredExtent
0c38ad51016d care for preSet preferredExtent
Claus Gittinger <cg@exept.de>
parents: 703
diff changeset
  1593
    ].
0c38ad51016d care for preSet preferredExtent
Claus Gittinger <cg@exept.de>
parents: 703
diff changeset
  1594
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1595
    scrolledView notNil ifTrue:[ 
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1596
        slavesPref := scrolledView preferredExtent.
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1597
        prefX := slavesPref x.
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1598
        prefY := slavesPref y.
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1599
        vScrollBar notNil ifTrue:[
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1600
            prefX := prefX + vScrollBar width + (DefaultScrolledViewMargin * 2) + DefaultScrollBarSpacing.
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1601
        ].
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1602
        hScrollBar notNil ifTrue:[
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1603
            prefY := prefY + hScrollBar height + (DefaultScrolledViewMargin * 2) + DefaultScrollBarSpacing.
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1604
        ].
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1605
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1606
        ^ prefX @ prefY.
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1607
    ].
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1608
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1609
    ^ super preferredExtent.
572
121735c2aff6 commentary
Claus Gittinger <cg@exept.de>
parents: 562
diff changeset
  1610
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1611
    "Created: 6.3.1997 / 18:06:24 / cg"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1612
    "Modified: 6.3.1997 / 22:34:09 / cg"
678
c1967a46b2c1 added query for lines/cols - prefExt
Claus Gittinger <cg@exept.de>
parents: 608
diff changeset
  1613
!
c1967a46b2c1 added query for lines/cols - prefExt
Claus Gittinger <cg@exept.de>
parents: 608
diff changeset
  1614
c1967a46b2c1 added query for lines/cols - prefExt
Claus Gittinger <cg@exept.de>
parents: 608
diff changeset
  1615
preferredExtentForLines:numLines cols:numCols
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1616
    "return my preferredExtent from the scrolledViews prefExtent
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1617
     plus the size of the scrollBar"
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1618
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1619
    |slavesPref prefX prefY|
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1620
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1621
    "/ If I have an explicit preferredExtent ..
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1622
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1623
    preferredExtent notNil ifTrue:[
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1624
        ^ preferredExtent
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1625
    ].
678
c1967a46b2c1 added query for lines/cols - prefExt
Claus Gittinger <cg@exept.de>
parents: 608
diff changeset
  1626
c1967a46b2c1 added query for lines/cols - prefExt
Claus Gittinger <cg@exept.de>
parents: 608
diff changeset
  1627
    scrolledView notNil ifTrue:[ 
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1628
        slavesPref := scrolledView preferredExtentForLines:numLines cols:numCols.
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1629
        prefX := slavesPref x.
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1630
        prefY := slavesPref y.
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1631
        vScrollBar notNil ifTrue:[
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1632
            prefX := prefX + vScrollBar width + (DefaultScrolledViewMargin * 2) + DefaultScrollBarSpacing.
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1633
        ].
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1634
        hScrollBar notNil ifTrue:[
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1635
            prefY := prefY + hScrollBar height + (DefaultScrolledViewMargin * 2) + DefaultScrollBarSpacing.
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1636
        ].
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1637
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1638
        ^ prefX @ prefY.
678
c1967a46b2c1 added query for lines/cols - prefExt
Claus Gittinger <cg@exept.de>
parents: 608
diff changeset
  1639
    ].
1104
88b80680773e about to merge V & HV scrollableView into a single
Claus Gittinger <cg@exept.de>
parents: 1097
diff changeset
  1640
678
c1967a46b2c1 added query for lines/cols - prefExt
Claus Gittinger <cg@exept.de>
parents: 608
diff changeset
  1641
    ^ super preferredExtent.
c1967a46b2c1 added query for lines/cols - prefExt
Claus Gittinger <cg@exept.de>
parents: 608
diff changeset
  1642
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1643
    "Created: 6.3.1997 / 18:06:24 / cg"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1644
    "Modified: 6.3.1997 / 22:34:30 / cg"
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1645
! !
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1646
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1647
!ScrollableView methodsFor:'slave-view messages'!
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1648
1024
a4ca85a880ca checkin from browser
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
  1649
clear
1073
1be1af284d3b care for nil scrolledView in #clear
ca
parents: 1024
diff changeset
  1650
    scrolledView notNil ifTrue:[scrolledView clear]
1024
a4ca85a880ca checkin from browser
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
  1651
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1652
    "Created: 6.3.1997 / 18:06:24 / cg"
1024
a4ca85a880ca checkin from browser
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
  1653
!
a4ca85a880ca checkin from browser
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
  1654
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1655
doesNotUnderstand:aMessage
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1656
    "this is funny: all message we do not understand, are passed
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1657
     on to the scrolledView - so we do not have to care for all
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1658
     possible messages ...(thanks to the Message class)"
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1659
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1660
     scrolledView isNil ifFalse:[
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1661
         ^ scrolledView perform:(aMessage selector)
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1662
                  withArguments:(aMessage arguments)
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1663
     ].
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1664
     ^ super doesNotUnderstand:aMessage
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1665
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1666
    "Created: 6.3.1997 / 18:06:24 / cg"
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1667
    "Modified: 6.3.1997 / 18:38:54 / cg"
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1668
!
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1669
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1670
leftButtonMenu
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
  1671
    "return scrolledViews leftbuttonmenu"
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
  1672
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
  1673
    scrolledView isNil ifTrue:[^ nil].
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1674
    ^ scrolledView leftButtonMenu
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1675
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1676
    "Created: 6.3.1997 / 18:06:24 / cg"
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1677
!
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1678
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1679
leftButtonMenu:aMenu
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1680
    "pass on leftbuttonmenu to scrolledView"
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1681
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1682
    scrolledView leftButtonMenu:aMenu
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1683
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1684
    "Created: 6.3.1997 / 18:06:24 / cg"
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1685
!
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1686
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1687
middleButtonMenu
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
  1688
    "return scrolledViews middlebuttonmenu"
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
  1689
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
  1690
    scrolledView isNil ifTrue:[^ nil].
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1691
    ^ scrolledView middleButtonMenu
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1692
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1693
    "Created: 6.3.1997 / 18:06:24 / cg"
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1694
!
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1695
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1696
middleButtonMenu:aMenu
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1697
    "pass on middlebuttonmenu to scrolledView"
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1698
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1699
    scrolledView middleButtonMenu:aMenu
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1700
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1701
    "Created: 6.3.1997 / 18:06:24 / cg"
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1702
!
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1703
562
1199debbda51 forward model access
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
  1704
model
754
4db5b854cc88 comment
Claus Gittinger <cg@exept.de>
parents: 713
diff changeset
  1705
    "return my scrolledViews model"
4db5b854cc88 comment
Claus Gittinger <cg@exept.de>
parents: 713
diff changeset
  1706
1085
25c315911e69 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1073
diff changeset
  1707
    scrolledView isNil ifTrue:[^ nil].
562
1199debbda51 forward model access
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
  1708
    ^ scrolledView model
1199debbda51 forward model access
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
  1709
1085
25c315911e69 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1073
diff changeset
  1710
    "Modified: 1.3.1997 / 01:38:07 / cg"
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1711
    "Created: 6.3.1997 / 18:06:24 / cg"
562
1199debbda51 forward model access
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
  1712
!
1199debbda51 forward model access
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
  1713
1199debbda51 forward model access
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
  1714
model:aModel
754
4db5b854cc88 comment
Claus Gittinger <cg@exept.de>
parents: 713
diff changeset
  1715
    "forward model change to my scrolledViews"
4db5b854cc88 comment
Claus Gittinger <cg@exept.de>
parents: 713
diff changeset
  1716
562
1199debbda51 forward model access
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
  1717
    ^ scrolledView model:aModel
1199debbda51 forward model access
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
  1718
754
4db5b854cc88 comment
Claus Gittinger <cg@exept.de>
parents: 713
diff changeset
  1719
    "Modified: 5.6.1996 / 17:09:50 / cg"
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1720
    "Created: 6.3.1997 / 18:06:24 / cg"
562
1199debbda51 forward model access
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
  1721
!
1199debbda51 forward model access
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
  1722
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1723
rightButtonMenu
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
  1724
    "return scrolledViews rightbuttonmenu"
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
  1725
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
  1726
    scrolledView isNil ifTrue:[^ nil].
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1727
    ^ scrolledView rightButtonMenu
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1728
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1729
    "Created: 6.3.1997 / 18:06:24 / cg"
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1730
!
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1731
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1732
rightButtonMenu:aMenu
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1733
    "pass on rightbuttonmenu to scrolledView"
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1734
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1735
    scrolledView rightButtonMenu:aMenu
1111
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1736
bdad313b2397 defined source container
Claus Gittinger <cg@exept.de>
parents: 1110
diff changeset
  1737
    "Created: 6.3.1997 / 18:06:24 / cg"
38
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
  1738
! !
4b9b70b2cc87 2.10.3 pre-final version
claus
parents: 7
diff changeset
  1739
852
3d828d54ebee checkin from browser
Claus Gittinger <cg@exept.de>
parents: 819
diff changeset
  1740
!ScrollableView class methodsFor:'documentation'!
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1741
217
c208ce696327 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
  1742
version
1135
acdeed6efc13 Fix prev fix from cg. Send setupDimensions only if scrolledView
Stefan Vogel <sv@exept.de>
parents: 1134
diff changeset
  1743
    ^ '$Header: /cvs/stx/stx/libwidg/ScrollableView.st,v 1.54 1997-03-19 15:43:47 stefan Exp $'
0
e6a541c1c0eb Initial revision
claus
parents:
diff changeset
  1744
! !