ViewWithAcceptAndCancelBar.st
author Claus Gittinger <cg@exept.de>
Wed, 26 Sep 2012 14:44:28 +0200
changeset 11816 4fd3ddf4f2ff
parent 10920 9228a3108da8
child 12401 4714b9640528
child 13518 049393762925
permissions -rw-r--r--
language strings
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:[
10919
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
   146
        (app := self application) notNil ifTrue:[
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
   147
            (changedObject == reallyModifiedHolder 
5b83c014a5ae comments
Claus Gittinger <cg@exept.de>
parents: 8842
diff changeset
   148
            or:[ changedObject == slaveView modifiedChannel ]) ifTrue:[
7309
691b97b5b79e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6775
diff changeset
   149
                app
691b97b5b79e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6775
diff changeset
   150
                    enqueueMessage:#updateBarVisibility
8240
907893416fca *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7761
diff changeset
   151
                    for:self 
907893416fca *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7761
diff changeset
   152
                    arguments:#().
7309
691b97b5b79e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6775
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
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   198
slaveView:aView
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   199
    self add:aView.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   200
    slaveView := aView.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   201
    aView origin:(0.0@0.0) corner:(1.0@1.0).
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   202
    aView modifiedChannel addDependent:self.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   203
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   204
    "
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   205
     |v|
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   206
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   207
     v := self new.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   208
     v slaveView:CodeView new.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   209
     v open
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   210
    "
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   211
! !
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   212
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   213
!ViewWithAcceptAndCancelBar::AcceptAndCancelBar methodsFor:'accessing'!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   214
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   215
acceptButton
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   216
    ^ acceptButton
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   217
!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   218
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   219
cancelButton
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   220
    ^ cancelButton
8332
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   221
!
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   222
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   223
compareButton
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   224
    ^ compareButton
7761
e9d62468e172 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7309
diff changeset
   225
! !
e9d62468e172 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7309
diff changeset
   226
e9d62468e172 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7309
diff changeset
   227
!ViewWithAcceptAndCancelBar::AcceptAndCancelBar methodsFor:'help'!
6775
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   228
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   229
flyByHelpTextAt:srcPoint
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   230
    "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
   231
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   232
    (acceptButton bounds containsPoint:srcPoint) ifTrue:[
11816
4fd3ddf4f2ff language strings
Claus Gittinger <cg@exept.de>
parents: 10920
diff changeset
   233
        ^ resources string:'Accept'
6775
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   234
    ].
8332
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   235
    (cancelButton bounds containsPoint:srcPoint) ifTrue:[
11816
4fd3ddf4f2ff language strings
Claus Gittinger <cg@exept.de>
parents: 10920
diff changeset
   236
        ^ resources string:'Cancel'
6775
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   237
    ].
8332
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   238
    (compareButton bounds containsPoint:srcPoint) ifTrue:[
11816
4fd3ddf4f2ff language strings
Claus Gittinger <cg@exept.de>
parents: 10920
diff changeset
   239
        ^ resources string:'Compare against Original'
8332
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   240
    ].
6775
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   241
    ^ nil
11816
4fd3ddf4f2ff language strings
Claus Gittinger <cg@exept.de>
parents: 10920
diff changeset
   242
4fd3ddf4f2ff language strings
Claus Gittinger <cg@exept.de>
parents: 10920
diff changeset
   243
    "Modified: / 26-09-2012 / 14:26:14 / cg"
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   244
! !
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   245
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   246
!ViewWithAcceptAndCancelBar::AcceptAndCancelBar methodsFor:'initialization'!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   247
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   248
initialize
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   249
    super initialize.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   250
6775
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   251
    acceptButton := ButtonWithHelpText new.
8336
e37d5992d9e4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8332
diff changeset
   252
    acceptButton origin:0.0 @ 0.0 corner:1.0@0.7.
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   253
    acceptButton backgroundColor:Color green.
11816
4fd3ddf4f2ff language strings
Claus Gittinger <cg@exept.de>
parents: 10920
diff changeset
   254
    acceptButton flyByHelpText:(resources string:'Accept').
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   255
    self add:acceptButton.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   256
6775
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   257
    cancelButton := ButtonWithHelpText new.
8336
e37d5992d9e4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8332
diff changeset
   258
    cancelButton origin:0.0 @ 0.7 corner:1.0@0.9.
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   259
    cancelButton backgroundColor:Color red.
11816
4fd3ddf4f2ff language strings
Claus Gittinger <cg@exept.de>
parents: 10920
diff changeset
   260
    cancelButton flyByHelpText:(resources string:'Cancel').
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   261
    self add:cancelButton.
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   262
8332
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   263
    compareButton := ButtonWithHelpText new.
8336
e37d5992d9e4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8332
diff changeset
   264
    compareButton origin:0.0 @ 0.9 corner:1.0@1.0.
8332
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   265
    compareButton backgroundColor:Color yellow.
11816
4fd3ddf4f2ff language strings
Claus Gittinger <cg@exept.de>
parents: 10920
diff changeset
   266
    compareButton flyByHelpText:(resources string:'Compare against Original').
8332
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   267
    compareButton label:'?'.
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   268
    self add:compareButton.
fd3728983e3c +compareButton
Claus Gittinger <cg@exept.de>
parents: 8240
diff changeset
   269
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   270
    "
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   271
     AcceptAndCancelBar new open
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   272
    "
11816
4fd3ddf4f2ff language strings
Claus Gittinger <cg@exept.de>
parents: 10920
diff changeset
   273
4fd3ddf4f2ff language strings
Claus Gittinger <cg@exept.de>
parents: 10920
diff changeset
   274
    "Modified: / 26-09-2012 / 14:44:18 / cg"
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   275
! !
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   276
6775
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   277
!ViewWithAcceptAndCancelBar::AcceptAndCancelBar::ButtonWithHelpText methodsFor:'accessing'!
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   278
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   279
flyByHelpText
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   280
    ^ helpText
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   281
!
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   282
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   283
flyByHelpText:something
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   284
    helpText := something.
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   285
! !
08d41de35293 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6772
diff changeset
   286
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   287
!ViewWithAcceptAndCancelBar class methodsFor:'documentation'!
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   288
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   289
version
11816
4fd3ddf4f2ff language strings
Claus Gittinger <cg@exept.de>
parents: 10920
diff changeset
   290
    ^ '$Header: /cvs/stx/stx/libtool/ViewWithAcceptAndCancelBar.st,v 1.11 2012-09-26 12:44:28 cg Exp $'
8842
a2fc5fdbd5ae added: #scrolledView
Claus Gittinger <cg@exept.de>
parents: 8336
diff changeset
   291
!
a2fc5fdbd5ae added: #scrolledView
Claus Gittinger <cg@exept.de>
parents: 8336
diff changeset
   292
a2fc5fdbd5ae added: #scrolledView
Claus Gittinger <cg@exept.de>
parents: 8336
diff changeset
   293
version_CVS
11816
4fd3ddf4f2ff language strings
Claus Gittinger <cg@exept.de>
parents: 10920
diff changeset
   294
    ^ '$Header: /cvs/stx/stx/libtool/ViewWithAcceptAndCancelBar.st,v 1.11 2012-09-26 12:44:28 cg Exp $'
6772
07a067c578d5 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   295
! !