ViewWithAcceptAndCancelBar.st
author Claus Gittinger <cg@exept.de>
Sat, 05 Feb 2011 14:06:56 +0100
changeset 9736 94b7fca09158
parent 8842 a2fc5fdbd5ae
child 10919 5b83c014a5ae
permissions -rw-r--r--
class definition changed: #defaultLabel #suppressHeadline:
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
"
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     2
 COPYRIGHT (c) 2006 by eXept Software AG
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
              All Rights Reserved
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     5
 This software is furnished under a license and may be used
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     6
 only in accordance with the terms of that license and with the
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     8
 be provided or otherwise made available to, or used by, any
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     9
 other person.  No title to or ownership of the software is
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    10
 hereby transferred.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    11
"
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    12
"{ Package: 'stx:libtool' }"
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    13
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    14
SimpleView subclass:#ViewWithAcceptAndCancelBar
8332
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
    15
	instanceVariableNames:'slaveView bar reallyModifiedHolder acceptAction cancelAction
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
    16
		compareAction'
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    17
	classVariableNames:''
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    18
	poolDictionaries:''
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
	category:'Views-Basic'
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    22
SimpleView subclass:#AcceptAndCancelBar
8332
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
    23
	instanceVariableNames:'acceptButton cancelButton compareButton'
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    24
	classVariableNames:''
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
	poolDictionaries:''
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    26
	privateIn:ViewWithAcceptAndCancelBar
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    27
!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
6775
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
    29
Button subclass:#ButtonWithHelpText
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
    30
	instanceVariableNames:'helpText'
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
    31
	classVariableNames:''
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
    32
	poolDictionaries:''
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
    33
	privateIn:ViewWithAcceptAndCancelBar::AcceptAndCancelBar
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
    34
!
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
    35
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    36
!ViewWithAcceptAndCancelBar class methodsFor:'documentation'!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    37
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
copyright
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    39
"
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    40
 COPYRIGHT (c) 2006 by eXept Software AG
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    41
              All Rights Reserved
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    42
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    43
 This software is furnished under a license and may be used
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    44
 only in accordance with the terms of that license and with the
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    45
 inclusion of the above copyright notice.   This software may not
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    46
 be provided or otherwise made available to, or used by, any
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    47
 other person.  No title to or ownership of the software is
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    48
 hereby transferred.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    49
"
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    50
!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    51
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    52
documentation
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    53
"
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    54
    experimental - self like accept/cancel bar in the browsers
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    55
    code view.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    56
    Enable with:
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    57
         UserPreferences current showAcceptCancelBarInBrowser:true
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    58
"
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    59
! !
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    60
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    61
!ViewWithAcceptAndCancelBar methodsFor:'accessing'!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    62
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    63
acceptAction:something
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    64
    acceptAction := something.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    65
!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    66
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    67
cancelAction:something
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    68
    cancelAction := something.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    69
!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    70
8332
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
    71
compareAction:something
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
    72
    compareAction := something.
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
    73
!
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
    74
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    75
reallyModifiedHolder:aValueHolder
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    76
    reallyModifiedHolder := aValueHolder.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    77
    reallyModifiedHolder addDependent:self.
8842
a2fc5fdbd5ae added: #scrolledView
Claus Gittinger <cg@exept.de>
parents: 8336
diff changeset
    78
!
a2fc5fdbd5ae added: #scrolledView
Claus Gittinger <cg@exept.de>
parents: 8336
diff changeset
    79
a2fc5fdbd5ae added: #scrolledView
Claus Gittinger <cg@exept.de>
parents: 8336
diff changeset
    80
scrolledView
a2fc5fdbd5ae added: #scrolledView
Claus Gittinger <cg@exept.de>
parents: 8336
diff changeset
    81
    "for protocol compatibility"
a2fc5fdbd5ae added: #scrolledView
Claus Gittinger <cg@exept.de>
parents: 8336
diff changeset
    82
a2fc5fdbd5ae added: #scrolledView
Claus Gittinger <cg@exept.de>
parents: 8336
diff changeset
    83
    ^ slaveView scrolledView
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    84
! !
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    85
8332
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
    86
!ViewWithAcceptAndCancelBar methodsFor:'action'!
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
    87
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
    88
accept
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
    89
    acceptAction value
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
    90
!
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
    91
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
    92
cancel
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
    93
    cancelAction notNil ifTrue:[
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
    94
        cancelAction value
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
    95
    ]
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
    96
!
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
    97
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
    98
compare
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
    99
    compareAction notNil ifTrue:[
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   100
        compareAction value
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   101
    ]
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   102
! !
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   103
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   104
!ViewWithAcceptAndCancelBar methodsFor:'change & update'!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   105
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   106
hideBar
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   107
    bar unmap.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   108
    bar hiddenOnRealize:true.
6775
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   109
    slaveView origin:(0.0 @ 0.0) corner:(1.0 @ 1.0).
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   110
!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   111
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   112
showBar
6775
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   113
    slaveView origin:(20 @ 0.0) corner:(1.0 @ 1.0).
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   114
    bar hiddenOnRealize:false.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   115
    bar realize.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   116
!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   117
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   118
update:something with:aParameter from:changedObject
7309
691b97b5b79e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6775
diff changeset
   119
    |app|
691b97b5b79e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6775
diff changeset
   120
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   121
    slaveView notNil ifTrue:[
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   122
        changedObject == reallyModifiedHolder ifTrue:[
7309
691b97b5b79e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6775
diff changeset
   123
            (app := self application) notNil ifTrue:[
691b97b5b79e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6775
diff changeset
   124
                app
691b97b5b79e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6775
diff changeset
   125
                    enqueueMessage:#updateBarVisibility
8240
907893416fca *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7761
diff changeset
   126
                    for:self 
907893416fca *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7761
diff changeset
   127
                    arguments:#().
7309
691b97b5b79e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6775
diff changeset
   128
            ].
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   129
        ].
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   130
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   131
        changedObject == slaveView modifiedChannel ifTrue:[
7309
691b97b5b79e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6775
diff changeset
   132
            (app := self application) notNil ifTrue:[
691b97b5b79e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6775
diff changeset
   133
                app
691b97b5b79e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6775
diff changeset
   134
                    enqueueMessage:#updateBarVisibility
8240
907893416fca *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7761
diff changeset
   135
                    for:self 
907893416fca *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7761
diff changeset
   136
                    arguments:#().
7309
691b97b5b79e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6775
diff changeset
   137
            ].
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   138
        ].
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   139
    ].
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   140
    super update:something with:aParameter from:changedObject
7309
691b97b5b79e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6775
diff changeset
   141
691b97b5b79e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6775
diff changeset
   142
    "Modified: / 18-09-2006 / 22:46:49 / cg"
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   143
!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   144
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   145
updateBarVisibility
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   146
    |modified|
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   147
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   148
     modified := reallyModifiedHolder notNil 
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   149
                ifTrue:[ reallyModifiedHolder value ]
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   150
                ifFalse:[ slaveView modifiedChannel value ].
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   151
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   152
    modified ifTrue:[
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   153
        self showBar
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   154
    ] ifFalse:[
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   155
        self hideBar
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   156
    ].
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   157
! !
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   158
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   159
!ViewWithAcceptAndCancelBar methodsFor:'initialization'!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   160
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   161
initialize
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   162
    super initialize.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   163
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   164
    bar := AcceptAndCancelBar in:self.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   165
    bar origin:(0.0 @ 0.0) corner:(20 @ 1.0).
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   166
    bar hiddenOnRealize:true.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   167
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   168
    bar acceptButton action:[ self accept ].
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   169
    bar cancelButton action:[ self cancel ].
8332
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   170
    bar compareButton action:[ self compare ].
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   171
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   172
    acceptAction := [ slaveView notNil ifTrue:[ slaveView accept ] ].
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   173
    cancelAction := [  ].
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   174
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   175
    "
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   176
     self new open
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   177
    "
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   178
!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   179
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   180
slaveView:aView
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   181
    self add:aView.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   182
    slaveView := aView.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   183
    aView origin:(0.0@0.0) corner:(1.0@1.0).
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   184
    aView modifiedChannel addDependent:self.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   185
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   186
    "
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   187
     |v|
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   188
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   189
     v := self new.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   190
     v slaveView:CodeView new.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   191
     v open
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   192
    "
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   193
! !
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   194
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   195
!ViewWithAcceptAndCancelBar::AcceptAndCancelBar methodsFor:'accessing'!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   196
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   197
acceptButton
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   198
    ^ acceptButton
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   199
!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   200
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   201
cancelButton
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   202
    ^ cancelButton
8332
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   203
!
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   204
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   205
compareButton
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   206
    ^ compareButton
7761
e9d62468e172 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7309
diff changeset
   207
! !
e9d62468e172 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7309
diff changeset
   208
e9d62468e172 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7309
diff changeset
   209
!ViewWithAcceptAndCancelBar::AcceptAndCancelBar methodsFor:'help'!
6775
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   210
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   211
flyByHelpTextAt:srcPoint
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   212
    "return the helpText for aPoint (i.e. when mouse-pointer is moved over an item)."
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   213
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   214
    (acceptButton bounds containsPoint:srcPoint) ifTrue:[
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   215
        ^ 'Accept'
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   216
    ].
8332
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   217
    (cancelButton bounds containsPoint:srcPoint) ifTrue:[
6775
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   218
        ^ 'Cancel'
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   219
    ].
8332
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   220
    (compareButton bounds containsPoint:srcPoint) ifTrue:[
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   221
        ^ 'Compare against Original'
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   222
    ].
6775
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   223
    ^ nil
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   224
! !
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   225
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   226
!ViewWithAcceptAndCancelBar::AcceptAndCancelBar methodsFor:'initialization'!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   227
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   228
initialize
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   229
    super initialize.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   230
6775
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   231
    acceptButton := ButtonWithHelpText new.
8336
e37d5992d9e4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8332
diff changeset
   232
    acceptButton origin:0.0 @ 0.0 corner:1.0@0.7.
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   233
    acceptButton backgroundColor:Color green.
6775
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   234
    acceptButton flyByHelpText:'Accept'.
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   235
    self add:acceptButton.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   236
6775
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   237
    cancelButton := ButtonWithHelpText new.
8336
e37d5992d9e4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8332
diff changeset
   238
    cancelButton origin:0.0 @ 0.7 corner:1.0@0.9.
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   239
    cancelButton backgroundColor:Color red.
6775
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   240
    cancelButton flyByHelpText:'Cancel'.
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   241
    self add:cancelButton.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   242
8332
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   243
    compareButton := ButtonWithHelpText new.
8336
e37d5992d9e4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8332
diff changeset
   244
    compareButton origin:0.0 @ 0.9 corner:1.0@1.0.
8332
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   245
    compareButton backgroundColor:Color yellow.
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   246
    compareButton flyByHelpText:'Compare against Original'.
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   247
    compareButton label:'?'.
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   248
    self add:compareButton.
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   249
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   250
    "
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   251
     AcceptAndCancelBar new open
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   252
    "
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   253
! !
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   254
6775
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   255
!ViewWithAcceptAndCancelBar::AcceptAndCancelBar::ButtonWithHelpText methodsFor:'accessing'!
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   256
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   257
flyByHelpText
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   258
    ^ helpText
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   259
!
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   260
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   261
flyByHelpText:something
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   262
    helpText := something.
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   263
! !
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   264
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   265
!ViewWithAcceptAndCancelBar class methodsFor:'documentation'!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   266
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   267
version
8842
a2fc5fdbd5ae added: #scrolledView
Claus Gittinger <cg@exept.de>
parents: 8336
diff changeset
   268
    ^ '$Header: /cvs/stx/stx/libtool/ViewWithAcceptAndCancelBar.st,v 1.8 2009-10-01 16:23:57 cg Exp $'
a2fc5fdbd5ae added: #scrolledView
Claus Gittinger <cg@exept.de>
parents: 8336
diff changeset
   269
!
a2fc5fdbd5ae added: #scrolledView
Claus Gittinger <cg@exept.de>
parents: 8336
diff changeset
   270
a2fc5fdbd5ae added: #scrolledView
Claus Gittinger <cg@exept.de>
parents: 8336
diff changeset
   271
version_CVS
a2fc5fdbd5ae added: #scrolledView
Claus Gittinger <cg@exept.de>
parents: 8336
diff changeset
   272
    ^ '$Header: /cvs/stx/stx/libtool/ViewWithAcceptAndCancelBar.st,v 1.8 2009-10-01 16:23:57 cg Exp $'
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   273
! !