ViewWithAcceptAndCancelBar.st
author Claus Gittinger <cg@exept.de>
Fri, 30 May 2014 22:54:45 +0200
changeset 14429 3fb66a972ee5
parent 13518 049393762925
child 14434 a99f61cbb975
permissions -rw-r--r--
class: ViewWithAcceptAndCancelBar added: #setSlaveView: changed: #slaveView:
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
10919
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
    64
    "define the action to be performed when the green accept button is pressed"
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
    65
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    66
    acceptAction := something.
10919
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
    67
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
    68
    "Modified (comment): / 29-11-2011 / 12:59:18 / cg"
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    69
!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    70
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    71
cancelAction:something
10919
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
    72
    "define the action to be performed when the red cancel button is pressed"
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
    73
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    74
    cancelAction := something.
10919
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
    75
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
    76
    "Modified (comment): / 29-11-2011 / 12:59:24 / cg"
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    77
!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    78
10919
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
    79
compareAction:aBlock
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
    80
    "define the action to be performed when the yellow compare button is pressed"
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
    81
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
    82
    compareAction := aBlock.
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
    83
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
    84
    "Modified (comment): / 29-11-2011 / 12:59:01 / cg"
8332
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
    85
!
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
    86
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    87
reallyModifiedHolder:aValueHolder
10919
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
    88
    "set the holder which keeps track of the real modified state;
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
    89
     the modified state of the view is set with every user-input,
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
    90
     but cleared by the master (in order to trigger future modified events).
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
    91
     With ever modified change, the state of the reallyModified is updated"
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
    92
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
    93
    reallyModifiedHolder notNil ifTrue:[
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
    94
        reallyModifiedHolder removeDependent:self.
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
    95
    ].
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    96
    reallyModifiedHolder := aValueHolder.
10919
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
    97
    reallyModifiedHolder notNil ifTrue:[
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
    98
        reallyModifiedHolder addDependent:self.
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
    99
    ]
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
   100
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
   101
    "Modified: / 29-11-2011 / 13:01:02 / cg"
8842
a2fc5fdbd5ae added: #scrolledView
Claus Gittinger <cg@exept.de>
parents: 8336
diff changeset
   102
!
a2fc5fdbd5ae added: #scrolledView
Claus Gittinger <cg@exept.de>
parents: 8336
diff changeset
   103
a2fc5fdbd5ae added: #scrolledView
Claus Gittinger <cg@exept.de>
parents: 8336
diff changeset
   104
scrolledView
a2fc5fdbd5ae added: #scrolledView
Claus Gittinger <cg@exept.de>
parents: 8336
diff changeset
   105
    "for protocol compatibility"
a2fc5fdbd5ae added: #scrolledView
Claus Gittinger <cg@exept.de>
parents: 8336
diff changeset
   106
a2fc5fdbd5ae added: #scrolledView
Claus Gittinger <cg@exept.de>
parents: 8336
diff changeset
   107
    ^ slaveView scrolledView
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   108
! !
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   109
8332
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   110
!ViewWithAcceptAndCancelBar methodsFor:'action'!
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   111
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   112
accept
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   113
    acceptAction value
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   114
!
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   115
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   116
cancel
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   117
    cancelAction notNil ifTrue:[
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   118
        cancelAction value
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   119
    ]
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   120
!
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   121
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   122
compare
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   123
    compareAction notNil ifTrue:[
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   124
        compareAction value
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   125
    ]
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   126
! !
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   127
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   128
!ViewWithAcceptAndCancelBar methodsFor:'change & update'!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   129
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   130
hideBar
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   131
    bar unmap.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   132
    bar hiddenOnRealize:true.
6775
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   133
    slaveView origin:(0.0 @ 0.0) corner:(1.0 @ 1.0).
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   134
!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   135
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   136
showBar
6775
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   137
    slaveView origin:(20 @ 0.0) corner:(1.0 @ 1.0).
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   138
    bar hiddenOnRealize:false.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   139
    bar realize.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   140
!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   141
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   142
update:something with:aParameter from:changedObject
7309
691b97b5b79e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6775
diff changeset
   143
    |app|
691b97b5b79e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6775
diff changeset
   144
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   145
    slaveView notNil ifTrue:[
13518
049393762925 class: ViewWithAcceptAndCancelBar
Claus Gittinger <cg@exept.de>
parents: 11816
diff changeset
   146
        (changedObject == reallyModifiedHolder 
049393762925 class: ViewWithAcceptAndCancelBar
Claus Gittinger <cg@exept.de>
parents: 11816
diff changeset
   147
        or:[ changedObject == slaveView modifiedChannel ]) ifTrue:[
049393762925 class: ViewWithAcceptAndCancelBar
Claus Gittinger <cg@exept.de>
parents: 11816
diff changeset
   148
            (app := self application) notNil ifTrue:[
049393762925 class: ViewWithAcceptAndCancelBar
Claus Gittinger <cg@exept.de>
parents: 11816
diff changeset
   149
                "/ not sure if we really need to send it through the application
049393762925 class: ViewWithAcceptAndCancelBar
Claus Gittinger <cg@exept.de>
parents: 11816
diff changeset
   150
                app enqueueMessage:#updateBarVisibility for:self arguments:#().
049393762925 class: ViewWithAcceptAndCancelBar
Claus Gittinger <cg@exept.de>
parents: 11816
diff changeset
   151
            ] ifFalse:[
049393762925 class: ViewWithAcceptAndCancelBar
Claus Gittinger <cg@exept.de>
parents: 11816
diff changeset
   152
                self sensor pushUserEvent:#updateBarVisibility for:self withArguments:#()
049393762925 class: ViewWithAcceptAndCancelBar
Claus Gittinger <cg@exept.de>
parents: 11816
diff changeset
   153
            ]
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   154
        ].
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   155
    ].
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   156
    super update:something with:aParameter from:changedObject
7309
691b97b5b79e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6775
diff changeset
   157
10919
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
   158
    "Modified: / 29-11-2011 / 12:57:55 / cg"
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   159
!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   160
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   161
updateBarVisibility
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   162
    |modified|
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   163
10920
9228a3108da8 comment/format in: #updateBarVisibility
Claus Gittinger <cg@exept.de>
parents: 10919
diff changeset
   164
    modified := reallyModifiedHolder notNil 
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   165
                ifTrue:[ reallyModifiedHolder value ]
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   166
                ifFalse:[ slaveView modifiedChannel value ].
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   167
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   168
    modified ifTrue:[
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   169
        self showBar
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   170
    ] ifFalse:[
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   171
        self hideBar
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   172
    ].
10920
9228a3108da8 comment/format in: #updateBarVisibility
Claus Gittinger <cg@exept.de>
parents: 10919
diff changeset
   173
9228a3108da8 comment/format in: #updateBarVisibility
Claus Gittinger <cg@exept.de>
parents: 10919
diff changeset
   174
    "Modified (format): / 29-11-2011 / 14:05:04 / cg"
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   175
! !
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   176
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   177
!ViewWithAcceptAndCancelBar methodsFor:'initialization'!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   178
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   179
initialize
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   180
    super initialize.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   181
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   182
    bar := AcceptAndCancelBar in:self.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   183
    bar origin:(0.0 @ 0.0) corner:(20 @ 1.0).
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   184
    bar hiddenOnRealize:true.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   185
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   186
    bar acceptButton action:[ self accept ].
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   187
    bar cancelButton action:[ self cancel ].
8332
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   188
    bar compareButton action:[ self compare ].
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   189
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   190
    acceptAction := [ slaveView notNil ifTrue:[ slaveView accept ] ].
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   191
    cancelAction := [  ].
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
     self new open
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   195
    "
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   196
!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   197
14429
3fb66a972ee5 class: ViewWithAcceptAndCancelBar
Claus Gittinger <cg@exept.de>
parents: 13518
diff changeset
   198
setSlaveView:aView
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   199
    slaveView := aView.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   200
    aView origin:(0.0@0.0) corner:(1.0@1.0).
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   201
    aView modifiedChannel addDependent:self.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   202
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   203
    "
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   204
     |v|
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   205
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   206
     v := self new.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   207
     v slaveView:CodeView new.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   208
     v open
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   209
    "
14429
3fb66a972ee5 class: ViewWithAcceptAndCancelBar
Claus Gittinger <cg@exept.de>
parents: 13518
diff changeset
   210
!
3fb66a972ee5 class: ViewWithAcceptAndCancelBar
Claus Gittinger <cg@exept.de>
parents: 13518
diff changeset
   211
3fb66a972ee5 class: ViewWithAcceptAndCancelBar
Claus Gittinger <cg@exept.de>
parents: 13518
diff changeset
   212
slaveView:aView
3fb66a972ee5 class: ViewWithAcceptAndCancelBar
Claus Gittinger <cg@exept.de>
parents: 13518
diff changeset
   213
    self add:aView.
3fb66a972ee5 class: ViewWithAcceptAndCancelBar
Claus Gittinger <cg@exept.de>
parents: 13518
diff changeset
   214
    self setSlaveView:aView.
3fb66a972ee5 class: ViewWithAcceptAndCancelBar
Claus Gittinger <cg@exept.de>
parents: 13518
diff changeset
   215
3fb66a972ee5 class: ViewWithAcceptAndCancelBar
Claus Gittinger <cg@exept.de>
parents: 13518
diff changeset
   216
    "
3fb66a972ee5 class: ViewWithAcceptAndCancelBar
Claus Gittinger <cg@exept.de>
parents: 13518
diff changeset
   217
     |v|
3fb66a972ee5 class: ViewWithAcceptAndCancelBar
Claus Gittinger <cg@exept.de>
parents: 13518
diff changeset
   218
3fb66a972ee5 class: ViewWithAcceptAndCancelBar
Claus Gittinger <cg@exept.de>
parents: 13518
diff changeset
   219
     v := self new.
3fb66a972ee5 class: ViewWithAcceptAndCancelBar
Claus Gittinger <cg@exept.de>
parents: 13518
diff changeset
   220
     v slaveView:CodeView new.
3fb66a972ee5 class: ViewWithAcceptAndCancelBar
Claus Gittinger <cg@exept.de>
parents: 13518
diff changeset
   221
     v open
3fb66a972ee5 class: ViewWithAcceptAndCancelBar
Claus Gittinger <cg@exept.de>
parents: 13518
diff changeset
   222
    "
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   223
! !
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   224
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   225
!ViewWithAcceptAndCancelBar::AcceptAndCancelBar methodsFor:'accessing'!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   226
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   227
acceptButton
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   228
    ^ acceptButton
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   229
!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   230
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   231
cancelButton
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   232
    ^ cancelButton
8332
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   233
!
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   234
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   235
compareButton
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   236
    ^ compareButton
7761
e9d62468e172 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7309
diff changeset
   237
! !
e9d62468e172 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7309
diff changeset
   238
e9d62468e172 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7309
diff changeset
   239
!ViewWithAcceptAndCancelBar::AcceptAndCancelBar methodsFor:'help'!
6775
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   240
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   241
flyByHelpTextAt:srcPoint
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   242
    "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
   243
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   244
    (acceptButton bounds containsPoint:srcPoint) ifTrue:[
11816
4fd3ddf4f2ff language strings
Claus Gittinger <cg@exept.de>
parents: 10920
diff changeset
   245
        ^ resources string:'Accept'
6775
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   246
    ].
8332
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   247
    (cancelButton bounds containsPoint:srcPoint) ifTrue:[
11816
4fd3ddf4f2ff language strings
Claus Gittinger <cg@exept.de>
parents: 10920
diff changeset
   248
        ^ resources string:'Cancel'
6775
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   249
    ].
8332
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   250
    (compareButton bounds containsPoint:srcPoint) ifTrue:[
11816
4fd3ddf4f2ff language strings
Claus Gittinger <cg@exept.de>
parents: 10920
diff changeset
   251
        ^ resources string:'Compare against Original'
8332
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   252
    ].
6775
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   253
    ^ nil
11816
4fd3ddf4f2ff language strings
Claus Gittinger <cg@exept.de>
parents: 10920
diff changeset
   254
4fd3ddf4f2ff language strings
Claus Gittinger <cg@exept.de>
parents: 10920
diff changeset
   255
    "Modified: / 26-09-2012 / 14:26:14 / cg"
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   256
! !
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   257
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   258
!ViewWithAcceptAndCancelBar::AcceptAndCancelBar methodsFor:'initialization'!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   259
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   260
initialize
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   261
    super initialize.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   262
6775
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   263
    acceptButton := ButtonWithHelpText new.
8336
e37d5992d9e4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8332
diff changeset
   264
    acceptButton origin:0.0 @ 0.0 corner:1.0@0.7.
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   265
    acceptButton backgroundColor:Color green.
11816
4fd3ddf4f2ff language strings
Claus Gittinger <cg@exept.de>
parents: 10920
diff changeset
   266
    acceptButton flyByHelpText:(resources string:'Accept').
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   267
    self add:acceptButton.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   268
6775
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   269
    cancelButton := ButtonWithHelpText new.
8336
e37d5992d9e4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8332
diff changeset
   270
    cancelButton origin:0.0 @ 0.7 corner:1.0@0.9.
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   271
    cancelButton backgroundColor:Color red.
11816
4fd3ddf4f2ff language strings
Claus Gittinger <cg@exept.de>
parents: 10920
diff changeset
   272
    cancelButton flyByHelpText:(resources string:'Cancel').
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   273
    self add:cancelButton.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   274
8332
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   275
    compareButton := ButtonWithHelpText new.
8336
e37d5992d9e4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8332
diff changeset
   276
    compareButton origin:0.0 @ 0.9 corner:1.0@1.0.
8332
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   277
    compareButton backgroundColor:Color yellow.
11816
4fd3ddf4f2ff language strings
Claus Gittinger <cg@exept.de>
parents: 10920
diff changeset
   278
    compareButton flyByHelpText:(resources string:'Compare against Original').
8332
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   279
    compareButton label:'?'.
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   280
    self add:compareButton.
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   281
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   282
    "
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   283
     AcceptAndCancelBar new open
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   284
    "
11816
4fd3ddf4f2ff language strings
Claus Gittinger <cg@exept.de>
parents: 10920
diff changeset
   285
4fd3ddf4f2ff language strings
Claus Gittinger <cg@exept.de>
parents: 10920
diff changeset
   286
    "Modified: / 26-09-2012 / 14:44:18 / cg"
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   287
! !
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   288
6775
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   289
!ViewWithAcceptAndCancelBar::AcceptAndCancelBar::ButtonWithHelpText methodsFor:'accessing'!
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   290
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   291
flyByHelpText
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   292
    ^ helpText
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   293
!
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   294
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   295
flyByHelpText:something
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   296
    helpText := something.
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   297
! !
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   298
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   299
!ViewWithAcceptAndCancelBar class methodsFor:'documentation'!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   300
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   301
version
14429
3fb66a972ee5 class: ViewWithAcceptAndCancelBar
Claus Gittinger <cg@exept.de>
parents: 13518
diff changeset
   302
    ^ '$Header: /cvs/stx/stx/libtool/ViewWithAcceptAndCancelBar.st,v 1.13 2014-05-30 20:54:45 cg Exp $'
8842
a2fc5fdbd5ae added: #scrolledView
Claus Gittinger <cg@exept.de>
parents: 8336
diff changeset
   303
!
a2fc5fdbd5ae added: #scrolledView
Claus Gittinger <cg@exept.de>
parents: 8336
diff changeset
   304
a2fc5fdbd5ae added: #scrolledView
Claus Gittinger <cg@exept.de>
parents: 8336
diff changeset
   305
version_CVS
14429
3fb66a972ee5 class: ViewWithAcceptAndCancelBar
Claus Gittinger <cg@exept.de>
parents: 13518
diff changeset
   306
    ^ '$Header: /cvs/stx/stx/libtool/ViewWithAcceptAndCancelBar.st,v 1.13 2014-05-30 20:54:45 cg Exp $'
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   307
! !
13518
049393762925 class: ViewWithAcceptAndCancelBar
Claus Gittinger <cg@exept.de>
parents: 11816
diff changeset
   308