ColorMenu.st
author ca
Tue, 08 Oct 2002 08:35:50 +0200
changeset 2254 ebd685bcba77
parent 2186 05b16a66bb3d
child 2497 0beadb2a951c
permissions -rw-r--r--
starting removing #menuAdornmentAt:
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
422
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
     1
"
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
     2
 COPYRIGHT (c) 1995 by eXept Software AG
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
     3
              All Rights Reserved
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
     4
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
     5
 This software is furnished under a license and may be used
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
     6
 only in accordance with the terms of that license and with the
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
     8
 be provided or otherwise made available to, or used by, any
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
     9
 other person.  No title to or ownership of the software is
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
    10
 hereby transferred.
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
    11
"
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
    12
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
    13
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
    14
1803
ad801646be62 category change
Claus Gittinger <cg@exept.de>
parents: 1676
diff changeset
    15
"{ Package: 'stx:libtool2' }"
ad801646be62 category change
Claus Gittinger <cg@exept.de>
parents: 1676
diff changeset
    16
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    17
MenuPanel subclass:#ColorMenu
2183
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
    18
	instanceVariableNames:'enabledChannel labelsAreColored'
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
    19
	classVariableNames:''
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    20
	poolDictionaries:''
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    21
	category:'Interface-UIPainter'
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    22
!
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    23
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
    24
SimpleDialog subclass:#DefineColor
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
    25
	instanceVariableNames:'red green blue hue light saturation colorNameHolder'
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
    26
	classVariableNames:''
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
    27
	poolDictionaries:''
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
    28
	privateIn:ColorMenu
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
    29
!
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
    30
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    31
!ColorMenu class methodsFor:'documentation'!
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    32
422
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
    33
copyright
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
    34
"
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
    35
 COPYRIGHT (c) 1995 by eXept Software AG
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
    36
              All Rights Reserved
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
    37
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
    38
 This software is furnished under a license and may be used
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
    39
 only in accordance with the terms of that license and with the
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
    40
 inclusion of the above copyright notice.   This software may not
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
    41
 be provided or otherwise made available to, or used by, any
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
    42
 other person.  No title to or ownership of the software is
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
    43
 hereby transferred.
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
    44
"
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
    45
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
    46
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
    47
!
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
    48
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    49
documentation
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    50
"
2183
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
    51
    A simple ColorMenu used by the UIPainter
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    52
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    53
    [see also:]
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    54
        UIPainter
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    55
        ColorMenuSpec
422
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
    56
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
    57
    [author:]
b28cfebfef40 added copyrights
Claus Gittinger <cg@exept.de>
parents: 412
diff changeset
    58
        Claus Atzkern
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    59
"
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    60
!
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    61
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    62
examples
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    63
"
2183
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
    64
  very simple example
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    65
                                                                                [exBegin]                                      
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    66
    |tool top channel|
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    67
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    68
    top := StandardSystemView new.
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    69
    top extent:250@30.
2183
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
    70
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    71
    channel := (Color red) asValue.
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    72
    tool := self origin:0.0@0.0 corner:1.0@1.0 in:top.
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    73
    tool model:channel.
2183
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
    74
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    75
    top open.
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    76
                                                                                [exEnd]
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    77
"
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    78
! !
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    79
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    80
!ColorMenu class methodsFor:'menu spec'!
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    81
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
    82
colorDefinition
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
    83
    "color definitions used to build a color menu
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    84
    "
583
4753eec71973 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 476
diff changeset
    85
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
    86
  ^ #(
668
774e55692416 remove labels in top menu
ca
parents: 666
diff changeset
    87
        #(  gray
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
    88
            gray:
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
    89
            #(  white
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
    90
                veryLightGray
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
    91
                lightGray
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
    92
                gray 
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
    93
                darkGray 
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
    94
                veryDarkGray 
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
    95
                black 
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
    96
             )
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
    97
        )
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
    98
668
774e55692416 remove labels in top menu
ca
parents: 666
diff changeset
    99
        #(  red
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   100
            red:
854
591cc5592fdf more harmonic color palettes
tz
parents: 832
diff changeset
   101
            #( lightened 100 87 67 50 33)
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   102
         )
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   103
668
774e55692416 remove labels in top menu
ca
parents: 666
diff changeset
   104
        #(  green
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   105
            green:
854
591cc5592fdf more harmonic color palettes
tz
parents: 832
diff changeset
   106
            #( lightened 100 87 67 50 33)
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   107
         )
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   108
668
774e55692416 remove labels in top menu
ca
parents: 666
diff changeset
   109
        #(  blue
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   110
            blue:
854
591cc5592fdf more harmonic color palettes
tz
parents: 832
diff changeset
   111
            #( lightened 100 87 67 50 33)
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   112
         )
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   113
668
774e55692416 remove labels in top menu
ca
parents: 666
diff changeset
   114
        #(  cyan
854
591cc5592fdf more harmonic color palettes
tz
parents: 832
diff changeset
   115
            cyan:
591cc5592fdf more harmonic color palettes
tz
parents: 832
diff changeset
   116
            #( lightened 100 87 67 50 33)
664
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   117
        )
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   118
668
774e55692416 remove labels in top menu
ca
parents: 666
diff changeset
   119
        #(  magenta
854
591cc5592fdf more harmonic color palettes
tz
parents: 832
diff changeset
   120
            magenta:
591cc5592fdf more harmonic color palettes
tz
parents: 832
diff changeset
   121
            #( lightened 100 87 67 50 33)
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   122
        )
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   123
668
774e55692416 remove labels in top menu
ca
parents: 666
diff changeset
   124
        #(  yellow
854
591cc5592fdf more harmonic color palettes
tz
parents: 832
diff changeset
   125
            yellow:
591cc5592fdf more harmonic color palettes
tz
parents: 832
diff changeset
   126
            #( lightened 100 87 67 50 33)
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   127
        )
806
abed5a47e545 separators removed and color orange added
tz
parents: 692
diff changeset
   128
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   129
    )
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   130
!
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   131
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   132
colorMenu:labelAreColored value:aValue
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   133
    "returns a color menu
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   134
    "
1410
be0e2a06be7c unused local removed
Claus Gittinger <cg@exept.de>
parents: 1372
diff changeset
   135
    |menu mainCol style e|
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   136
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   137
    menu  := Menu new.
1372
54d8812de860 care for good contrast in color-menus
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
   138
    style := (labelAreColored == false) 
54d8812de860 care for good contrast in color-menus
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
   139
                ifTrue:[#backgroundColor] 
54d8812de860 care for good contrast in color-menus
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
   140
                ifFalse:[#color].
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   141
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   142
    self colorDefinition do:[:aSlice|
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   143
        |size colOp color item smenu|
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   144
668
774e55692416 remove labels in top menu
ca
parents: 666
diff changeset
   145
        mainCol := Color perform:(aSlice at:1).
774e55692416 remove labels in top menu
ca
parents: 666
diff changeset
   146
        item    := MenuItem labeled:(Text string:'  ' emphasis:(#backgroundColor->mainCol)).
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   147
        smenu   := Menu new.
668
774e55692416 remove labels in top menu
ca
parents: 666
diff changeset
   148
        colOp   := aSlice at:2.
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   149
668
774e55692416 remove labels in top menu
ca
parents: 666
diff changeset
   150
        (aSlice at:3) do:[:el||sitem label|
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   151
            el isSymbol ifTrue:[
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   152
                color := el == #lightened ifTrue:[mainCol perform:el] ifFalse:[Color perform:el].
854
591cc5592fdf more harmonic color palettes
tz
parents: 832
diff changeset
   153
                self colorDefinition first ~~ aSlice 
591cc5592fdf more harmonic color palettes
tz
parents: 832
diff changeset
   154
                    ifTrue: [label := (colOp upTo: $:), ' ', el] 
591cc5592fdf more harmonic color palettes
tz
parents: 832
diff changeset
   155
                    ifFalse:[label := el].
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   156
            ] ifFalse:[
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   157
                el isNumber ifTrue:[
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   158
                    color := Color perform:colOp with:el.
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   159
                    label := colOp, ' ', el printString.
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   160
                ] ifFalse:[
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   161
                    color := Color perform:colOp with:(el at:1) with:(el at:2) with:(el at:3).
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   162
                    label := ''.
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   163
                    colOp keywords keysAndValuesDo:[:i :c| label := label, ' ', c, ' ' , (el at:i) printString ].
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   164
                ]
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   165
            ].
1372
54d8812de860 care for good contrast in color-menus
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
   166
            e := style->color.
54d8812de860 care for good contrast in color-menus
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
   167
            style == #backgroundColor ifTrue:[
54d8812de860 care for good contrast in color-menus
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
   168
                color brightness < 0.5 ifTrue:[
54d8812de860 care for good contrast in color-menus
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
   169
                    e := Array with:e
54d8812de860 care for good contrast in color-menus
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
   170
                               with:(#color->Color white) 
54d8812de860 care for good contrast in color-menus
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
   171
                ]
54d8812de860 care for good contrast in color-menus
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
   172
            ].
54d8812de860 care for good contrast in color-menus
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
   173
            sitem := MenuItem 
54d8812de860 care for good contrast in color-menus
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
   174
                        labeled:(Text 
54d8812de860 care for good contrast in color-menus
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
   175
                                    string:('Color ', label)
54d8812de860 care for good contrast in color-menus
Claus Gittinger <cg@exept.de>
parents: 1119
diff changeset
   176
                                    emphasis:e).
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   177
            sitem argument:color.
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   178
            sitem value:aValue.
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   179
            smenu addItem:sitem.
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   180
        ].
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   181
        item submenu:smenu.
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   182
        item value:nil.
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   183
        menu addItem:item        
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   184
    ].
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   185
    ^ menu
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   186
"
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   187
(ColorMenu colorMenu:true  value:nil) startUp
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   188
(ColorMenu colorMenu:false value:#aSelector:) startUp
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   189
"
592
c7813cfa8794 add more colors
ca
parents: 583
diff changeset
   190
! !
c7813cfa8794 add more colors
ca
parents: 583
diff changeset
   191
1808
e8628b502a49 methodCategory change
Claus Gittinger <cg@exept.de>
parents: 1803
diff changeset
   192
!ColorMenu methodsFor:'accepting'!
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   193
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   194
accept:anItem
664
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   195
    "accept current selected item"
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   196
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   197
    |item holder color|
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   198
2183
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   199
    ((item := super accept:anItem) notNil and: [item nameKey ~~ #def]) 
664
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   200
    ifTrue:
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   201
    [
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   202
        (holder := self colorHolder) == item ifTrue:
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   203
        [
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   204
            enabledChannel value ifTrue:[color := self color]
664
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   205
        ] 
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   206
        ifFalse:
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   207
        [  
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   208
            color := item argument.
692
fbf4503f8bc5 selection bug fixed
tz
parents: 668
diff changeset
   209
            holder label:(Text string:'   ' emphasis:(#backgroundColor->color)).
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   210
        ].
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   211
        model notNil ifTrue:[model value:color]
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   212
    ]
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   213
! !
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   214
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   215
!ColorMenu methodsFor:'accessing'!
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   216
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   217
color
664
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   218
    "get current color"
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   219
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   220
    |firstEmphasis|
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   221
    (firstEmphasis := (self colorHolder label emphasis at:1)) isAssociation ifTrue: [^firstEmphasis value].
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   222
    ^(firstEmphasis at: 1) value 
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   223
!
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   224
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   225
color:aColor
664
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   226
    "set current color"
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   227
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   228
    |holder label|
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   229
2184
16d3b72ca431 use inherited functionality
Claus Gittinger <cg@exept.de>
parents: 2183
diff changeset
   230
    aColor isColor ifFalse:[
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   231
        enabledChannel value:false
2184
16d3b72ca431 use inherited functionality
Claus Gittinger <cg@exept.de>
parents: 2183
diff changeset
   232
    ] ifTrue:[
16d3b72ca431 use inherited functionality
Claus Gittinger <cg@exept.de>
parents: 2183
diff changeset
   233
        self 
16d3b72ca431 use inherited functionality
Claus Gittinger <cg@exept.de>
parents: 2183
diff changeset
   234
            disabledRedrawDo:
16d3b72ca431 use inherited functionality
Claus Gittinger <cg@exept.de>
parents: 2183
diff changeset
   235
                [                 
16d3b72ca431 use inherited functionality
Claus Gittinger <cg@exept.de>
parents: 2183
diff changeset
   236
                    holder := self colorHolder.     
16d3b72ca431 use inherited functionality
Claus Gittinger <cg@exept.de>
parents: 2183
diff changeset
   237
                    label  := Text string: '   ' emphasis:(#backgroundColor->aColor).
16d3b72ca431 use inherited functionality
Claus Gittinger <cg@exept.de>
parents: 2183
diff changeset
   238
                    enabledChannel value:true.
16d3b72ca431 use inherited functionality
Claus Gittinger <cg@exept.de>
parents: 2183
diff changeset
   239
                    holder label:label.
16d3b72ca431 use inherited functionality
Claus Gittinger <cg@exept.de>
parents: 2183
diff changeset
   240
                    model value: aColor
16d3b72ca431 use inherited functionality
Claus Gittinger <cg@exept.de>
parents: 2183
diff changeset
   241
                ]
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   242
    ]
664
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   243
!
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   244
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   245
labelsAreColored: aBoolean
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   246
    "sets whether labels or their backgrounds will be colored"
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   247
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   248
    labelsAreColored := aBoolean ? false.
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   249
    self setupMenu
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   250
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   251
! !
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   252
1818
fe99c5c721e9 category changes
Claus Gittinger <cg@exept.de>
parents: 1816
diff changeset
   253
!ColorMenu methodsFor:'accessing-channels'!
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   254
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   255
model:aValueHolder
664
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   256
    "set my color channel"
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   257
2184
16d3b72ca431 use inherited functionality
Claus Gittinger <cg@exept.de>
parents: 2183
diff changeset
   258
    super model:aValueHolder.
2183
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   259
    model notNil ifTrue:[
2186
05b16a66bb3d updateFromModel
Claus Gittinger <cg@exept.de>
parents: 2184
diff changeset
   260
        self updateFromModel
664
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   261
    ]
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   262
! !
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   263
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   264
!ColorMenu methodsFor:'change & update'!
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   265
2186
05b16a66bb3d updateFromModel
Claus Gittinger <cg@exept.de>
parents: 2184
diff changeset
   266
updateFromModel
2184
16d3b72ca431 use inherited functionality
Claus Gittinger <cg@exept.de>
parents: 2183
diff changeset
   267
    self color:(model value)
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   268
! !
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   269
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   270
!ColorMenu methodsFor:'initialization'!
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   271
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   272
destroy
664
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   273
    "release color channel dependency"
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   274
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   275
    self model:nil.
664
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   276
    super destroy
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   277
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   278
!
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   279
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   280
initialize
664
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   281
    "setup menu"
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   282
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   283
    super initialize.
2254
ebd685bcba77 starting removing #menuAdornmentAt:
ca
parents: 2186
diff changeset
   284
    labelsAreColored    := false.
ebd685bcba77 starting removing #menuAdornmentAt:
ca
parents: 2186
diff changeset
   285
    verticalLayout      := false.    
ebd685bcba77 starting removing #menuAdornmentAt:
ca
parents: 2186
diff changeset
   286
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   287
    self fitFirstPanel:false.
895
d1c9210e796b checkin from browser
Claus Gittinger <cg@exept.de>
parents: 854
diff changeset
   288
    enabledChannel := ValueHolder with:false.
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   289
    self setupMenu.
895
d1c9210e796b checkin from browser
Claus Gittinger <cg@exept.de>
parents: 854
diff changeset
   290
d1c9210e796b checkin from browser
Claus Gittinger <cg@exept.de>
parents: 854
diff changeset
   291
    "Modified: / 21.5.1998 / 03:07:26 / cg"
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   292
!
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   293
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   294
setupMenu
664
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   295
    "setup menu"
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   296
    |menu item|
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   297
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   298
    menu := self class colorMenu:labelsAreColored value:nil.
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   299
    menu itemsDo:[:el| el isButton:true].
2183
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   300
    menu 
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   301
        addItem:(
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   302
            (MenuItem labeled:'...') 
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   303
                value: 
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   304
                    [
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   305
                        |defineColor|
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   306
                        defineColor := DefineColor new color: self color.
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   307
                        defineColor open.
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   308
                        defineColor accept value ifTrue: [self color: defineColor color]
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   309
2183
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   310
                    ];
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   311
                nameKey:#def;
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   312
                isButton: true) 
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   313
        beforeIndex:8.
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   314
    menu addItem:(MenuItem labeled:'') beforeIndex:8.
806
abed5a47e545 separators removed and color orange added
tz
parents: 692
diff changeset
   315
    menu addItem:(MenuItem labeled:' ') beforeIndex:5.
abed5a47e545 separators removed and color orange added
tz
parents: 692
diff changeset
   316
    menu addItem:(MenuItem labeled:' ') beforeIndex:2.
abed5a47e545 separators removed and color orange added
tz
parents: 692
diff changeset
   317
    menu addItem:(MenuItem labeled:' ') beforeIndex:1.
abed5a47e545 separators removed and color orange added
tz
parents: 692
diff changeset
   318
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   319
    item := MenuItem labeled:(Text string:'   ' emphasis:(#backgroundColor->DefaultViewBackgroundColor)).
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   320
    item value:#selection.
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   321
    menu addItem:item beforeIndex:1.
806
abed5a47e545 separators removed and color orange added
tz
parents: 692
diff changeset
   322
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   323
    self menu:menu.
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   324
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   325
    self do:[:anItem|
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   326
        (anItem submenu) notNil ifTrue:[
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   327
            anItem enabled:enabledChannel.
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   328
        ] ifFalse:[
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   329
            anItem value == #selection ifTrue:[anItem indication:enabledChannel] 
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   330
                                      ifFalse:[anItem enabled:false]. 
2183
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   331
            anItem nameKey == #def ifTrue:[anItem enabled:enabledChannel] 
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   332
        ]
664
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   333
    ]
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   334
! !
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   335
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   336
!ColorMenu methodsFor:'private'!
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   337
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   338
colorHolder
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   339
    "returns the item which keeps the selected color in its label
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   340
    "
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   341
  ^ self itemAt:#selection
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   342
! !
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   343
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   344
!ColorMenu::DefineColor class methodsFor:'interface specs'!
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   345
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   346
windowSpec
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   347
    "This resource specification was automatically generated
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   348
     by the UIPainter of ST/X."
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   349
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   350
    "Do not manually edit this!! If it is corrupted,
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   351
     the UIPainter may not be able to read the specification."
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   352
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   353
    "
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   354
     UIPainter new openOnClass:ColorMenu::DefineColor andSelector:#windowSpec
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   355
     ColorMenu::DefineColor new openInterface:#windowSpec
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   356
     ColorMenu::DefineColor open
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   357
    "
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   358
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   359
    <resource: #canvas>
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   360
1816
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   361
    ^ 
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   362
     #(#FullSpec
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   363
        #name: #windowSpec
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   364
        #window: 
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   365
       #(#WindowSpec
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   366
          #label: 'Define Color'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   367
          #name: 'Define Color'
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   368
          #min: #(#Point 340 260)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   369
          #max: #(#Point nil 260)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   370
          #bounds: #(#Rectangle 16 46 469 298)
1816
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   371
        )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   372
        #component: 
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   373
       #(#SpecCollection
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   374
          #collection: #(
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   375
           #(#VerticalPanelViewSpec
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   376
              #name: 'RGBLabelPanel'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   377
              #layout: #(#LayoutFrame 0 0 0 0 58 0 76 0)
1816
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   378
              #horizontalLayout: #fit
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   379
              #verticalLayout: #spreadSpace
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   380
              #horizontalSpace: 3
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   381
              #verticalSpace: 3
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   382
              #component: 
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   383
             #(#SpecCollection
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   384
                #collection: #(
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   385
                 #(#LabelSpec
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   386
                    #label: 'Red:'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   387
                    #name: 'RedLabel'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   388
                    #translateLabel: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   389
                    #adjust: #right
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   390
                    #useDefaultExtent: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   391
                  )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   392
                 #(#LabelSpec
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   393
                    #label: 'Green:'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   394
                    #name: 'GreenLabel'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   395
                    #translateLabel: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   396
                    #adjust: #right
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   397
                    #useDefaultExtent: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   398
                  )
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   399
                 #(#LabelSpec
1816
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   400
                    #label: 'Blue:'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   401
                    #name: 'BlueLabel'
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   402
                    #translateLabel: true
1816
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   403
                    #adjust: #right
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   404
                    #useDefaultExtent: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   405
                  )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   406
                 )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   407
               
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   408
              )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   409
            )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   410
           #(#VerticalPanelViewSpec
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   411
              #name: 'RGBSliderPanel'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   412
              #layout: #(#LayoutFrame 62 0 0 0 -166 1 76 0)
1816
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   413
              #horizontalLayout: #fit
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   414
              #verticalLayout: #spreadSpace
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   415
              #horizontalSpace: 3
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   416
              #verticalSpace: 3
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   417
              #component: 
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   418
             #(#SpecCollection
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   419
                #collection: #(
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   420
                 #(#SliderSpec
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   421
                    #name: 'RedSlider'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   422
                    #tabable: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   423
                    #model: #red
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   424
                    #orientation: #horizontal
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   425
                    #stop: 255
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   426
                    #step: 1
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   427
                    #backgroundColor: #(#Color 100.0 0.0 0.0)
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   428
                    #extent: #(#Point 225 16)
1816
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   429
                  )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   430
                 #(#SliderSpec
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   431
                    #name: 'GreenSlider'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   432
                    #tabable: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   433
                    #model: #green
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   434
                    #orientation: #horizontal
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   435
                    #stop: 255
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   436
                    #step: 1
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   437
                    #backgroundColor: #(#Color 0.0 100.0 0.0)
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   438
                    #extent: #(#Point 225 16)
1816
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   439
                  )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   440
                 #(#SliderSpec
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   441
                    #name: 'BlueSlider'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   442
                    #tabable: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   443
                    #model: #blue
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   444
                    #orientation: #horizontal
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   445
                    #stop: 255
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   446
                    #step: 1
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   447
                    #backgroundColor: #(#Color 0.0 0.0 100.0)
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   448
                    #extent: #(#Point 225 16)
1816
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   449
                  )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   450
                 )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   451
               
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   452
              )
1816
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   453
            )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   454
           #(#VerticalPanelViewSpec
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   455
              #name: 'RGBFieldPanel'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   456
              #layout: #(#LayoutFrame -161 1 0 0 -123 1 76 0)
1816
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   457
              #horizontalLayout: #fit
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   458
              #verticalLayout: #spreadSpace
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   459
              #horizontalSpace: 3
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   460
              #verticalSpace: 3
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   461
              #component: 
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   462
             #(#SpecCollection
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   463
                #collection: #(
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   464
                 #(#InputFieldSpec
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   465
                    #name: 'RedField'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   466
                    #model: #red
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   467
                    #type: #numberInRange
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   468
                    #numChars: 3
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   469
                    #minValue: 0
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   470
                    #maxValue: 255
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   471
                    #acceptOnPointerLeave: false
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   472
                    #extent: #(#Point 38 20)
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   473
                  )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   474
                 #(#InputFieldSpec
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   475
                    #name: 'GreenField'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   476
                    #model: #green
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   477
                    #type: #numberInRange
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   478
                    #numChars: 3
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   479
                    #minValue: 0
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   480
                    #maxValue: 255
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   481
                    #acceptOnPointerLeave: false
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   482
                    #extent: #(#Point 38 20)
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   483
                  )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   484
                 #(#InputFieldSpec
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   485
                    #name: 'BlueField'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   486
                    #model: #blue
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   487
                    #type: #numberInRange
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   488
                    #numChars: 3
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   489
                    #minValue: 0
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   490
                    #maxValue: 255
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   491
                    #acceptOnPointerLeave: false
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   492
                    #extent: #(#Point 38 20)
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   493
                  )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   494
                 )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   495
               
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   496
              )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   497
            )
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   498
           #(#VerticalPanelViewSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   499
              #name: 'HLSLabelPanel'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   500
              #layout: #(#LayoutFrame 0 0 86 0 58 0 163 0)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   501
              #horizontalLayout: #fit
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   502
              #verticalLayout: #spreadSpace
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   503
              #horizontalSpace: 3
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   504
              #verticalSpace: 3
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   505
              #component: 
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   506
             #(#SpecCollection
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   507
                #collection: #(
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   508
                 #(#LabelSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   509
                    #label: 'Hue:'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   510
                    #name: 'Label1'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   511
                    #translateLabel: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   512
                    #adjust: #right
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   513
                    #useDefaultExtent: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   514
                  )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   515
                 #(#LabelSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   516
                    #label: 'Light:'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   517
                    #name: 'Label2'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   518
                    #translateLabel: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   519
                    #adjust: #right
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   520
                    #useDefaultExtent: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   521
                  )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   522
                 #(#LabelSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   523
                    #label: 'Sat:'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   524
                    #name: 'Label3'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   525
                    #translateLabel: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   526
                    #adjust: #right
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   527
                    #useDefaultExtent: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   528
                  )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   529
                 )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   530
               
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   531
              )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   532
            )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   533
           #(#VerticalPanelViewSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   534
              #name: 'HLSSliderPanel'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   535
              #layout: #(#LayoutFrame 62 0 86 0 -166 1 163 0)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   536
              #horizontalLayout: #fit
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   537
              #verticalLayout: #spreadSpace
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   538
              #horizontalSpace: 3
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   539
              #verticalSpace: 3
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   540
              #component: 
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   541
             #(#SpecCollection
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   542
                #collection: #(
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   543
                 #(#SliderSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   544
                    #name: 'Slider1'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   545
                    #tabable: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   546
                    #model: #hue
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   547
                    #orientation: #horizontal
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   548
                    #stop: 359
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   549
                    #step: 1
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   550
                    #keyboardStep: 1
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   551
                    #extent: #(#Point 225 16)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   552
                  )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   553
                 #(#SliderSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   554
                    #name: 'Slider2'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   555
                    #tabable: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   556
                    #model: #light
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   557
                    #orientation: #horizontal
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   558
                    #step: 1
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   559
                    #backgroundColor: #(#Color 66.9993 66.9993 66.9993)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   560
                    #keyboardStep: 1
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   561
                    #extent: #(#Point 225 16)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   562
                  )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   563
                 #(#SliderSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   564
                    #name: 'Slider3'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   565
                    #tabable: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   566
                    #model: #saturation
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   567
                    #orientation: #horizontal
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   568
                    #step: 1
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   569
                    #backgroundColor: #(#Color 66.9993 66.9993 66.9993)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   570
                    #keyboardStep: 1
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   571
                    #extent: #(#Point 225 16)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   572
                  )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   573
                 )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   574
               
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   575
              )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   576
            )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   577
           #(#VerticalPanelViewSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   578
              #name: 'HLSFieldPanel'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   579
              #layout: #(#LayoutFrame -161 1 86 0 -123 1 163 0)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   580
              #horizontalLayout: #fit
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   581
              #verticalLayout: #spreadSpace
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   582
              #horizontalSpace: 3
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   583
              #verticalSpace: 3
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   584
              #component: 
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   585
             #(#SpecCollection
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   586
                #collection: #(
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   587
                 #(#InputFieldSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   588
                    #name: 'EntryField1'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   589
                    #model: #hue
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   590
                    #type: #numberInRange
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   591
                    #numChars: 3
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   592
                    #minValue: 0
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   593
                    #maxValue: 359
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   594
                    #acceptOnPointerLeave: false
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   595
                    #extent: #(#Point 38 20)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   596
                  )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   597
                 #(#InputFieldSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   598
                    #name: 'EntryField2'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   599
                    #model: #light
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   600
                    #type: #numberInRange
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   601
                    #numChars: 3
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   602
                    #minValue: 0
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   603
                    #maxValue: 100
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   604
                    #acceptOnPointerLeave: false
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   605
                    #extent: #(#Point 38 20)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   606
                  )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   607
                 #(#InputFieldSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   608
                    #name: 'EntryField3'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   609
                    #model: #saturation
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   610
                    #type: #numberInRange
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   611
                    #numChars: 3
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   612
                    #minValue: 0
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   613
                    #maxValue: 100
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   614
                    #acceptOnPointerLeave: false
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   615
                    #extent: #(#Point 38 20)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   616
                  )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   617
                 )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   618
               
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   619
              )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   620
            )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   621
           #(#ViewSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   622
              #name: 'Box1'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   623
              #layout: #(#LayoutFrame -117 1 4 0.0 -3 1.0 -39 1.0)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   624
              #level: 1
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   625
              #component: 
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   626
             #(#SpecCollection
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   627
                #collection: #(
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   628
                 #(#LabelSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   629
                    #label: 'Preview'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   630
                    #name: 'PreviewBox'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   631
                    #layout: #(#LayoutFrame 2 0.0 2 0.0 -2 1.0 -2 1.0)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   632
                    #level: -1
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   633
                    #translateLabel: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   634
                  )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   635
                 )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   636
               
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   637
              )
1816
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   638
            )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   639
           #(#HorizontalPanelViewSpec
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   640
              #name: 'HorizontalPanel1'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   641
              #layout: #(#LayoutFrame 0 0.0 -32 1 0 1.0 0 1.0)
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   642
              #horizontalLayout: #fitSpace
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   643
              #verticalLayout: #centerMax
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   644
              #horizontalSpace: 3
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   645
              #verticalSpace: 3
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   646
              #reverseOrderIfOKAtLeft: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   647
              #component: 
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   648
             #(#SpecCollection
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   649
                #collection: #(
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   650
                 #(#ActionButtonSpec
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   651
                    #label: 'Cancel'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   652
                    #name: 'CancelButton'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   653
                    #translateLabel: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   654
                    #resizeForLabel: false
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   655
                    #tabable: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   656
                    #model: #cancel
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   657
                    #useDefaultExtent: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   658
                  )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   659
                 #(#ActionButtonSpec
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   660
                    #label: 'OK'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   661
                    #name: 'OKButton'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   662
                    #translateLabel: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   663
                    #resizeForLabel: false
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   664
                    #tabable: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   665
                    #model: #accept
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   666
                    #isDefault: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   667
                    #defaultable: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   668
                    #useDefaultExtent: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   669
                  )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   670
                 )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   671
               
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   672
              )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   673
            )
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   674
           #(#InputFieldSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   675
              #name: 'ColorNameField'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   676
              #layout: #(#LayoutFrame 110 0 190 0 -123 1 212 0)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   677
              #model: #colorNameHolder
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   678
              #immediateAccept: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   679
              #acceptOnReturn: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   680
              #acceptOnTab: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   681
              #acceptOnLostFocus: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   682
              #acceptOnPointerLeave: false
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   683
            )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   684
           #(#LabelSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   685
              #label: 'Color Name:'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   686
              #name: 'Label4'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   687
              #layout: #(#LayoutFrame 0 0 190 0 106 0 212 0)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   688
              #translateLabel: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   689
              #adjust: #right
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   690
            )
1816
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   691
           )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   692
         
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   693
        )
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   694
      )
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   695
! !
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   696
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   697
!ColorMenu::DefineColor methodsFor:'accessing'!
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   698
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   699
color
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   700
    ^Color redByte:(red value) greenByte:(green value) blueByte:(blue value)
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   701
!
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   702
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   703
color: aColor
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   704
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   705
    aColor notNil
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   706
    ifTrue:
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   707
    [
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   708
        self red   value: aColor redByte.
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   709
        self green value: aColor greenByte.
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   710
        self blue  value: aColor blueByte.
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   711
    ]
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   712
  
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   713
!
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   714
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   715
colorName
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   716
    ^ colorNameHolder value
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   717
! !
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   718
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   719
!ColorMenu::DefineColor methodsFor:'actions'!
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   720
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   721
colorChanged
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   722
    |box clr|
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   723
2167
675c1cd59a80 builder componentAt: -> self componentAt:
Claus Gittinger <cg@exept.de>
parents: 2057
diff changeset
   724
    box := self componentAt: #PreviewBox.
2057
0146794063c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   725
    box isNil ifTrue:[^ self "called before setup"].
0146794063c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   726
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   727
    clr := self color.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   728
    box backgroundColor:clr.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   729
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   730
    clr brightness < 0.5 ifTrue:[
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   731
        box foregroundColor:Color white
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   732
    ] ifFalse:[
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   733
        box foregroundColor:Color black
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   734
    ].
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   735
!
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   736
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   737
colorNameChanged
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   738
    "compute rgb and hls (if possible)"
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   739
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   740
    |clr h|
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   741
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   742
    clr := Color name:colorNameHolder value ifIllegal:nil.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   743
    clr isNil ifTrue:[
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   744
        ^ self
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   745
    ].
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   746
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   747
    red   value:clr redByte withoutNotifying:self.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   748
    green value:clr greenByte withoutNotifying:self.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   749
    blue  value:clr blueByte withoutNotifying:self.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   750
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   751
    h := clr hue.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   752
    h notNil ifTrue:[
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   753
        hue        value:(h rounded) withoutNotifying:self.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   754
    ].
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   755
    light      value:(clr light rounded) withoutNotifying:self.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   756
    saturation value:(clr saturation rounded) withoutNotifying:self.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   757
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   758
    self colorChanged
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   759
!
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   760
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   761
hlsSliderChanged
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   762
    "compute rgb"
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   763
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   764
    Color withRGBFromHue:hue value light:light value saturation:saturation value do:[:r :g :b |
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   765
        red    value:(r * 255 / 100) rounded withoutNotifying:self.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   766
        green  value:(g * 255 / 100) rounded withoutNotifying:self.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   767
        blue   value:(b * 255 / 100) rounded withoutNotifying:self.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   768
    ].
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   769
    colorNameHolder value:'' withoutNotifying:self.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   770
    self colorChanged
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   771
!
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   772
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   773
rgbSliderChanged
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   774
    "compute hls"
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   775
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   776
    |r g b|
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   777
2057
0146794063c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   778
    r := self red value.
0146794063c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   779
    g := self green value.
0146794063c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   780
    b := self blue value.
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   781
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   782
    Color withHLSFromRed:(r * 100 / 255) green:(g * 100 / 255) blue:(b * 100 / 255) do:[:h :l :s |
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   783
        h isNil ifTrue:[
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   784
            "/ achromatic
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   785
        ] ifFalse:[
2057
0146794063c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   786
            self hue    value:(h rounded) withoutNotifying:self.
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   787
        ].
2057
0146794063c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   788
        self light      value:(l rounded) withoutNotifying:self.
0146794063c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   789
        self saturation value:(s rounded) withoutNotifying:self.
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   790
    ].
2057
0146794063c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   791
    self colorNameHolder value:'' withoutNotifying:self.
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   792
    self colorChanged
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   793
! !
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   794
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   795
!ColorMenu::DefineColor methodsFor:'aspects'!
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   796
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   797
blue
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   798
    blue isNil ifTrue:[
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   799
        blue := 0 asValue.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   800
        blue addDependent:self.
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   801
    ].
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   802
    ^blue
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   803
!
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   804
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   805
colorNameHolder
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   806
    colorNameHolder isNil ifTrue:[
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   807
        colorNameHolder := '' asValue.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   808
        colorNameHolder addDependent:self.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   809
    ].
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   810
    ^colorNameHolder
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   811
!
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   812
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   813
green
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   814
    green isNil ifTrue:[
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   815
        green := 0 asValue.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   816
        green addDependent:self.
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   817
    ].
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   818
    ^green
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   819
!
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   820
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   821
hue
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   822
    hue isNil ifTrue:[
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   823
        hue := 0 asValue.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   824
        hue addDependent:self.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   825
    ].
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   826
    ^hue
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   827
!
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   828
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   829
light
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   830
    light isNil ifTrue:[
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   831
        light := 0 asValue.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   832
        light addDependent:self.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   833
    ].
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   834
    ^light
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   835
!
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   836
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   837
red
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   838
    red isNil ifTrue:[
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   839
        red := 0 asValue.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   840
        red addDependent:self.
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   841
    ].
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   842
    ^red
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   843
!
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   844
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   845
saturation
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   846
    saturation isNil ifTrue:[
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   847
        saturation := 0 asValue.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   848
        saturation addDependent:self.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   849
    ].
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   850
    ^saturation
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   851
! !
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   852
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   853
!ColorMenu::DefineColor methodsFor:'change & update'!
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   854
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   855
update:something with:aParameter from:changedObject
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   856
    (changedObject == red
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   857
    or:[changedObject == green
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   858
    or:[changedObject == blue]]) ifTrue:[
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   859
        ^ self rgbSliderChanged
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   860
    ].
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   861
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   862
    (changedObject == hue
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   863
    or:[changedObject == light
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   864
    or:[changedObject == saturation]]) ifTrue:[
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   865
        ^ self hlsSliderChanged
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   866
    ].
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   867
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   868
    (changedObject == colorNameHolder) ifTrue:[
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   869
        ^ self colorNameChanged
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   870
    ].
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   871
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   872
    ^ super update:something with:aParameter from:changedObject
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   873
! !
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   874
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   875
!ColorMenu::DefineColor methodsFor:'startup / release'!
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   876
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   877
postBuildWith:aBuilder
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   878
    super postBuildWith:aBuilder.
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   879
    self colorChanged.
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   880
1119
11cd3ce5171b colorMenu: change labelColor to white for dark preview colors;
Claus Gittinger <cg@exept.de>
parents: 1058
diff changeset
   881
    "Modified: / 6.9.1998 / 22:55:25 / cg"
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   882
! !
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   883
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   884
!ColorMenu class methodsFor:'documentation'!
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   885
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   886
version
2254
ebd685bcba77 starting removing #menuAdornmentAt:
ca
parents: 2186
diff changeset
   887
    ^ '$Header: /cvs/stx/stx/libwidg2/ColorMenu.st,v 1.31 2002-10-08 06:35:50 ca Exp $'
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   888
! !