SequenceView.st
author Claus Gittinger <cg@exept.de>
Wed, 15 Nov 2017 11:56:58 +0100
changeset 6227 ff84138a7915
parent 5926 643cafe77eed
child 6815 34586cf7ecbd
permissions -rw-r--r--
#BUGFIX by cg class: EditTextView changed: #splitLinesAtCharacterOrString care for readonly
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2150
3cee520c3f91 copyrights
Claus Gittinger <cg@exept.de>
parents: 2100
diff changeset
     1
"
3cee520c3f91 copyrights
Claus Gittinger <cg@exept.de>
parents: 2100
diff changeset
     2
 COPYRIGHT (c) 1997 by eXept Software AG
3cee520c3f91 copyrights
Claus Gittinger <cg@exept.de>
parents: 2100
diff changeset
     3
              All Rights Reserved
3cee520c3f91 copyrights
Claus Gittinger <cg@exept.de>
parents: 2100
diff changeset
     4
3cee520c3f91 copyrights
Claus Gittinger <cg@exept.de>
parents: 2100
diff changeset
     5
 This software is furnished under a license and may be used
3cee520c3f91 copyrights
Claus Gittinger <cg@exept.de>
parents: 2100
diff changeset
     6
 only in accordance with the terms of that license and with the
3cee520c3f91 copyrights
Claus Gittinger <cg@exept.de>
parents: 2100
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
3cee520c3f91 copyrights
Claus Gittinger <cg@exept.de>
parents: 2100
diff changeset
     8
 be provided or otherwise made available to, or used by, any
3cee520c3f91 copyrights
Claus Gittinger <cg@exept.de>
parents: 2100
diff changeset
     9
 other person.  No title to or ownership of the software is
3cee520c3f91 copyrights
Claus Gittinger <cg@exept.de>
parents: 2100
diff changeset
    10
 hereby transferred.
3cee520c3f91 copyrights
Claus Gittinger <cg@exept.de>
parents: 2100
diff changeset
    11
"
2293
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
    12
"{ Package: 'stx:libwidg' }"
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
    13
5926
643cafe77eed #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3669
diff changeset
    14
"{ NameSpace: Smalltalk }"
643cafe77eed #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3669
diff changeset
    15
1238
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    16
ScrollableView subclass:#SequenceView
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    17
	instanceVariableNames:''
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    18
	classVariableNames:''
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    19
	poolDictionaries:''
1770
21860fc4cbde category change
Claus Gittinger <cg@exept.de>
parents: 1602
diff changeset
    20
	category:'Views-Lists'
1238
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    21
!
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    22
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    23
!SequenceView class methodsFor:'documentation'!
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    24
2150
3cee520c3f91 copyrights
Claus Gittinger <cg@exept.de>
parents: 2100
diff changeset
    25
copyright
3cee520c3f91 copyrights
Claus Gittinger <cg@exept.de>
parents: 2100
diff changeset
    26
"
3cee520c3f91 copyrights
Claus Gittinger <cg@exept.de>
parents: 2100
diff changeset
    27
 COPYRIGHT (c) 1997 by eXept Software AG
3cee520c3f91 copyrights
Claus Gittinger <cg@exept.de>
parents: 2100
diff changeset
    28
              All Rights Reserved
3cee520c3f91 copyrights
Claus Gittinger <cg@exept.de>
parents: 2100
diff changeset
    29
3cee520c3f91 copyrights
Claus Gittinger <cg@exept.de>
parents: 2100
diff changeset
    30
 This software is furnished under a license and may be used
3cee520c3f91 copyrights
Claus Gittinger <cg@exept.de>
parents: 2100
diff changeset
    31
 only in accordance with the terms of that license and with the
3cee520c3f91 copyrights
Claus Gittinger <cg@exept.de>
parents: 2100
diff changeset
    32
 inclusion of the above copyright notice.   This software may not
3cee520c3f91 copyrights
Claus Gittinger <cg@exept.de>
parents: 2100
diff changeset
    33
 be provided or otherwise made available to, or used by, any
3cee520c3f91 copyrights
Claus Gittinger <cg@exept.de>
parents: 2100
diff changeset
    34
 other person.  No title to or ownership of the software is
3cee520c3f91 copyrights
Claus Gittinger <cg@exept.de>
parents: 2100
diff changeset
    35
 hereby transferred.
3cee520c3f91 copyrights
Claus Gittinger <cg@exept.de>
parents: 2100
diff changeset
    36
"
3cee520c3f91 copyrights
Claus Gittinger <cg@exept.de>
parents: 2100
diff changeset
    37
3cee520c3f91 copyrights
Claus Gittinger <cg@exept.de>
parents: 2100
diff changeset
    38
!
3cee520c3f91 copyrights
Claus Gittinger <cg@exept.de>
parents: 2100
diff changeset
    39
1238
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    40
documentation
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    41
"
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    42
    implements a SelectionInListView with configurable scrollbars
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    43
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    44
    ST-80 compatibility
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    45
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    46
    [see also:]
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    47
        SelectionInListView
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    48
"
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    49
!
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    50
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    51
examples
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    52
"
2917
cbca85d08c88 Change categories and example
Stefan Vogel <sv@exept.de>
parents: 2744
diff changeset
    53
    same behavior as a SelectionInListView, but scrollable
1238
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    54
                                                                        [exBegin]
2917
cbca85d08c88 Change categories and example
Stefan Vogel <sv@exept.de>
parents: 2744
diff changeset
    55
    |view|
1238
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    56
2917
cbca85d08c88 Change categories and example
Stefan Vogel <sv@exept.de>
parents: 2744
diff changeset
    57
    view := self extent:100@100.
cbca85d08c88 Change categories and example
Stefan Vogel <sv@exept.de>
parents: 2744
diff changeset
    58
    view list:#( 'a' 'b' 'c' 'd' 'e' 'f' 'g' 'h' 'in der Ruhe liegt die Kraft').
cbca85d08c88 Change categories and example
Stefan Vogel <sv@exept.de>
parents: 2744
diff changeset
    59
    view multipleSelectOk:true.
cbca85d08c88 Change categories and example
Stefan Vogel <sv@exept.de>
parents: 2744
diff changeset
    60
    view openAndWait.
1238
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    61
                                                                        [exEnd]
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    62
"
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    63
! !
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    64
1592
d545f9ba1fba fixed defaultFont.
Claus Gittinger <cg@exept.de>
parents: 1238
diff changeset
    65
!SequenceView class methodsFor:'defaults'!
d545f9ba1fba fixed defaultFont.
Claus Gittinger <cg@exept.de>
parents: 1238
diff changeset
    66
d545f9ba1fba fixed defaultFont.
Claus Gittinger <cg@exept.de>
parents: 1238
diff changeset
    67
defaultFont
d545f9ba1fba fixed defaultFont.
Claus Gittinger <cg@exept.de>
parents: 1238
diff changeset
    68
    ^ SelectionInListView defaultFont
d545f9ba1fba fixed defaultFont.
Claus Gittinger <cg@exept.de>
parents: 1238
diff changeset
    69
d545f9ba1fba fixed defaultFont.
Claus Gittinger <cg@exept.de>
parents: 1238
diff changeset
    70
    "Created: / 20.6.1998 / 14:17:01 / cg"
d545f9ba1fba fixed defaultFont.
Claus Gittinger <cg@exept.de>
parents: 1238
diff changeset
    71
! !
d545f9ba1fba fixed defaultFont.
Claus Gittinger <cg@exept.de>
parents: 1238
diff changeset
    72
2744
cb920467a4b4 method category rename
Claus Gittinger <cg@exept.de>
parents: 2293
diff changeset
    73
!SequenceView methodsFor:'Compatibility-ST80'!
1602
35e103b2f981 added #optimizeForText (dummy - ST80 compat)
Claus Gittinger <cg@exept.de>
parents: 1592
diff changeset
    74
35e103b2f981 added #optimizeForText (dummy - ST80 compat)
Claus Gittinger <cg@exept.de>
parents: 1592
diff changeset
    75
optimizeForText
35e103b2f981 added #optimizeForText (dummy - ST80 compat)
Claus Gittinger <cg@exept.de>
parents: 1592
diff changeset
    76
    "dummy - ST-80 compatibility"
35e103b2f981 added #optimizeForText (dummy - ST80 compat)
Claus Gittinger <cg@exept.de>
parents: 1592
diff changeset
    77
35e103b2f981 added #optimizeForText (dummy - ST80 compat)
Claus Gittinger <cg@exept.de>
parents: 1592
diff changeset
    78
    "Created: / 6.7.1998 / 13:26:18 / cg"
35e103b2f981 added #optimizeForText (dummy - ST80 compat)
Claus Gittinger <cg@exept.de>
parents: 1592
diff changeset
    79
! !
35e103b2f981 added #optimizeForText (dummy - ST80 compat)
Claus Gittinger <cg@exept.de>
parents: 1592
diff changeset
    80
1238
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    81
!SequenceView methodsFor:'initialization'!
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    82
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    83
initialize
2917
cbca85d08c88 Change categories and example
Stefan Vogel <sv@exept.de>
parents: 2744
diff changeset
    84
    "setup a ScrollableView scrolling a SelectionInList instance"
cbca85d08c88 Change categories and example
Stefan Vogel <sv@exept.de>
parents: 2744
diff changeset
    85
1238
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    86
    super initialize.
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    87
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    88
    self verticalScrollable:true;     verticalMini:false.
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    89
    self horizontalScrollable:true; horizontalMini:false.
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    90
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    91
    self scrolledView:SelectionInListView new
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    92
! !
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
    93
2917
cbca85d08c88 Change categories and example
Stefan Vogel <sv@exept.de>
parents: 2744
diff changeset
    94
!SequenceView methodsFor:'slave-view messages'!
cbca85d08c88 Change categories and example
Stefan Vogel <sv@exept.de>
parents: 2744
diff changeset
    95
3669
4b6eff3a3ebf changed #enabled: - forward to child view
Stefan Vogel <sv@exept.de>
parents: 2917
diff changeset
    96
enabled:aBoolean
4b6eff3a3ebf changed #enabled: - forward to child view
Stefan Vogel <sv@exept.de>
parents: 2917
diff changeset
    97
    "senders assume that I am the listView - not a wrapper"
4b6eff3a3ebf changed #enabled: - forward to child view
Stefan Vogel <sv@exept.de>
parents: 2917
diff changeset
    98
4b6eff3a3ebf changed #enabled: - forward to child view
Stefan Vogel <sv@exept.de>
parents: 2917
diff changeset
    99
    scrolledView enabled:aBoolean
4b6eff3a3ebf changed #enabled: - forward to child view
Stefan Vogel <sv@exept.de>
parents: 2917
diff changeset
   100
!
4b6eff3a3ebf changed #enabled: - forward to child view
Stefan Vogel <sv@exept.de>
parents: 2917
diff changeset
   101
2917
cbca85d08c88 Change categories and example
Stefan Vogel <sv@exept.de>
parents: 2744
diff changeset
   102
font:aFont
cbca85d08c88 Change categories and example
Stefan Vogel <sv@exept.de>
parents: 2744
diff changeset
   103
    "set the font for the scrolled view"
cbca85d08c88 Change categories and example
Stefan Vogel <sv@exept.de>
parents: 2744
diff changeset
   104
5926
643cafe77eed #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3669
diff changeset
   105
    |scrolledView|
643cafe77eed #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3669
diff changeset
   106
    
2917
cbca85d08c88 Change categories and example
Stefan Vogel <sv@exept.de>
parents: 2744
diff changeset
   107
    super font:aFont.
5926
643cafe77eed #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3669
diff changeset
   108
    (scrolledView := self scrolledView) notNil ifTrue:[scrolledView font:aFont].
2917
cbca85d08c88 Change categories and example
Stefan Vogel <sv@exept.de>
parents: 2744
diff changeset
   109
!
2293
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   110
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   111
invalidate
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   112
    "senders assume that I am the listView - not a wrapper"
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   113
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   114
    scrolledView invalidate
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   115
!
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   116
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   117
invalidate:aRectangle
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   118
    "senders assume that I am the listView - not a wrapper"
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   119
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   120
    scrolledView invalidate:aRectangle
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   121
!
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   122
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   123
invalidate:aRectangle repairNow:doRepair
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   124
    "senders assume that I am the listView - not a wrapper"
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   125
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   126
    scrolledView invalidate:aRectangle repairNow:doRepair
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   127
!
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   128
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   129
invalidateDeviceRectangle:aRectangle repairNow:doRepair
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   130
    "senders assume that I am the listView - not a wrapper"
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   131
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   132
    scrolledView invalidateDeviceRectangle:aRectangle repairNow:doRepair
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   133
!
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   134
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   135
invalidateRepairNow:doRepair
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   136
    "senders assume that I am the listView - not a wrapper"
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   137
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   138
    scrolledView invalidateRepairNow:doRepair
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   139
! !
edeb8b9be073 forward invalidate requests to my scrolledView
Claus Gittinger <cg@exept.de>
parents: 2150
diff changeset
   140
1238
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
   141
!SequenceView class methodsFor:'documentation'!
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
   142
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
   143
version
5926
643cafe77eed #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3669
diff changeset
   144
    ^ '$Header$'
1238
9d002bb1ae64 intitial checkin
ca
parents:
diff changeset
   145
! !
5926
643cafe77eed #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3669
diff changeset
   146