ColorMenu.st
author Claus Gittinger <cg@exept.de>
Thu, 12 Sep 2002 15:39:15 +0200
changeset 2184 16d3b72ca431
parent 2183 5c69691590eb
child 2186 05b16a66bb3d
permissions -rw-r--r--
use inherited functionality
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:[
2184
16d3b72ca431 use inherited functionality
Claus Gittinger <cg@exept.de>
parents: 2183
diff changeset
   260
        self updateFomModel
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
1818
fe99c5c721e9 category changes
Claus Gittinger <cg@exept.de>
parents: 1816
diff changeset
   264
!ColorMenu methodsFor:'accessing-look'!
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   265
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   266
showSeparatingLines
664
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   267
    "no drawing of separating lines here"
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   268
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   269
    ^true
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   270
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   271
! !
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   272
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   273
!ColorMenu methodsFor:'change & update'!
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   274
2184
16d3b72ca431 use inherited functionality
Claus Gittinger <cg@exept.de>
parents: 2183
diff changeset
   275
updateFomModel
16d3b72ca431 use inherited functionality
Claus Gittinger <cg@exept.de>
parents: 2183
diff changeset
   276
    self color:(model value)
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
!ColorMenu methodsFor:'initialization'!
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   280
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   281
destroy
664
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   282
    "release color channel dependency"
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   283
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   284
    self model:nil.
664
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   285
    super destroy
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   286
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   287
!
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   288
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   289
initialize
664
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   290
    "setup menu"
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   291
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   292
    super initialize.
664
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   293
    labelsAreColored := false.
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   294
    self verticalLayout:false.
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   295
    self fitFirstPanel:false.
895
d1c9210e796b checkin from browser
Claus Gittinger <cg@exept.de>
parents: 854
diff changeset
   296
    enabledChannel := ValueHolder with:false.
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   297
    self setupMenu.
895
d1c9210e796b checkin from browser
Claus Gittinger <cg@exept.de>
parents: 854
diff changeset
   298
d1c9210e796b checkin from browser
Claus Gittinger <cg@exept.de>
parents: 854
diff changeset
   299
    "Modified: / 21.5.1998 / 03:07:26 / cg"
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   300
!
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   301
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   302
setupMenu
664
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   303
    "setup menu"
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   304
    |menu item|
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   305
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   306
    menu := self class colorMenu:labelsAreColored value:nil.
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   307
    menu itemsDo:[:el| el isButton:true].
2183
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   308
    menu 
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   309
        addItem:(
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   310
            (MenuItem labeled:'...') 
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   311
                value: 
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   312
                    [
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   313
                        |defineColor|
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   314
                        defineColor := DefineColor new color: self color.
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   315
                        defineColor open.
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   316
                        defineColor accept value ifTrue: [self color: defineColor color]
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   317
2183
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   318
                    ];
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   319
                nameKey:#def;
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   320
                isButton: true) 
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   321
        beforeIndex:8.
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   322
    menu addItem:(MenuItem labeled:'') beforeIndex:8.
806
abed5a47e545 separators removed and color orange added
tz
parents: 692
diff changeset
   323
    menu addItem:(MenuItem labeled:' ') beforeIndex:5.
abed5a47e545 separators removed and color orange added
tz
parents: 692
diff changeset
   324
    menu addItem:(MenuItem labeled:' ') beforeIndex:2.
abed5a47e545 separators removed and color orange added
tz
parents: 692
diff changeset
   325
    menu addItem:(MenuItem labeled:' ') beforeIndex:1.
abed5a47e545 separators removed and color orange added
tz
parents: 692
diff changeset
   326
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   327
    item := MenuItem labeled:(Text string:'   ' emphasis:(#backgroundColor->DefaultViewBackgroundColor)).
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   328
    item value:#selection.
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   329
    menu addItem:item beforeIndex:1.
806
abed5a47e545 separators removed and color orange added
tz
parents: 692
diff changeset
   330
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   331
    self menu:menu.
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   332
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   333
    self do:[:anItem|
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   334
        (anItem submenu) notNil ifTrue:[
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   335
            anItem enabled:enabledChannel.
666
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   336
        ] ifFalse:[
801db9028157 provides a basic color menu reused by
ca
parents: 664
diff changeset
   337
            anItem value == #selection ifTrue:[anItem indication:enabledChannel] 
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   338
                                      ifFalse:[anItem enabled:false]. 
2183
5c69691590eb code cleanup; now inherit model instVar.
Claus Gittinger <cg@exept.de>
parents: 2167
diff changeset
   339
            anItem nameKey == #def ifTrue:[anItem enabled:enabledChannel] 
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   340
        ]
664
53f8cdd4462c *** empty log message ***
tz
parents: 617
diff changeset
   341
    ]
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   342
! !
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   343
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   344
!ColorMenu methodsFor:'private'!
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   345
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   346
colorHolder
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   347
    "returns the item which keeps the selected color in its label
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   348
    "
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   349
  ^ self itemAt:#selection
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   350
! !
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   351
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   352
!ColorMenu::DefineColor class methodsFor:'interface specs'!
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   353
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   354
windowSpec
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   355
    "This resource specification was automatically generated
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   356
     by the UIPainter of ST/X."
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   357
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   358
    "Do not manually edit this!! If it is corrupted,
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   359
     the UIPainter may not be able to read the specification."
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   360
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   361
    "
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   362
     UIPainter new openOnClass:ColorMenu::DefineColor andSelector:#windowSpec
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   363
     ColorMenu::DefineColor new openInterface:#windowSpec
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   364
     ColorMenu::DefineColor open
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   365
    "
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   366
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   367
    <resource: #canvas>
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   368
1816
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   369
    ^ 
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   370
     #(#FullSpec
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   371
        #name: #windowSpec
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   372
        #window: 
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   373
       #(#WindowSpec
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   374
          #label: 'Define Color'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   375
          #name: 'Define Color'
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   376
          #min: #(#Point 340 260)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   377
          #max: #(#Point nil 260)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   378
          #bounds: #(#Rectangle 16 46 469 298)
1816
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   379
        )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   380
        #component: 
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   381
       #(#SpecCollection
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   382
          #collection: #(
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   383
           #(#VerticalPanelViewSpec
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   384
              #name: 'RGBLabelPanel'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   385
              #layout: #(#LayoutFrame 0 0 0 0 58 0 76 0)
1816
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   386
              #horizontalLayout: #fit
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   387
              #verticalLayout: #spreadSpace
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   388
              #horizontalSpace: 3
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   389
              #verticalSpace: 3
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   390
              #component: 
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   391
             #(#SpecCollection
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   392
                #collection: #(
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   393
                 #(#LabelSpec
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   394
                    #label: 'Red:'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   395
                    #name: 'RedLabel'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   396
                    #translateLabel: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   397
                    #adjust: #right
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   398
                    #useDefaultExtent: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   399
                  )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   400
                 #(#LabelSpec
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   401
                    #label: 'Green:'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   402
                    #name: 'GreenLabel'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   403
                    #translateLabel: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   404
                    #adjust: #right
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   405
                    #useDefaultExtent: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   406
                  )
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   407
                 #(#LabelSpec
1816
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   408
                    #label: 'Blue:'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   409
                    #name: 'BlueLabel'
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   410
                    #translateLabel: true
1816
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   411
                    #adjust: #right
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   412
                    #useDefaultExtent: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   413
                  )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   414
                 )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   415
               
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   416
              )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   417
            )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   418
           #(#VerticalPanelViewSpec
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   419
              #name: 'RGBSliderPanel'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   420
              #layout: #(#LayoutFrame 62 0 0 0 -166 1 76 0)
1816
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   421
              #horizontalLayout: #fit
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   422
              #verticalLayout: #spreadSpace
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   423
              #horizontalSpace: 3
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   424
              #verticalSpace: 3
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   425
              #component: 
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   426
             #(#SpecCollection
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   427
                #collection: #(
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   428
                 #(#SliderSpec
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   429
                    #name: 'RedSlider'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   430
                    #tabable: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   431
                    #model: #red
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   432
                    #orientation: #horizontal
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   433
                    #stop: 255
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   434
                    #step: 1
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   435
                    #backgroundColor: #(#Color 100.0 0.0 0.0)
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   436
                    #extent: #(#Point 225 16)
1816
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   437
                  )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   438
                 #(#SliderSpec
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   439
                    #name: 'GreenSlider'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   440
                    #tabable: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   441
                    #model: #green
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   442
                    #orientation: #horizontal
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   443
                    #stop: 255
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   444
                    #step: 1
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   445
                    #backgroundColor: #(#Color 0.0 100.0 0.0)
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   446
                    #extent: #(#Point 225 16)
1816
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   447
                  )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   448
                 #(#SliderSpec
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   449
                    #name: 'BlueSlider'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   450
                    #tabable: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   451
                    #model: #blue
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   452
                    #orientation: #horizontal
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   453
                    #stop: 255
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   454
                    #step: 1
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   455
                    #backgroundColor: #(#Color 0.0 0.0 100.0)
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   456
                    #extent: #(#Point 225 16)
1816
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   457
                  )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   458
                 )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   459
               
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   460
              )
1816
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   461
            )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   462
           #(#VerticalPanelViewSpec
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   463
              #name: 'RGBFieldPanel'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   464
              #layout: #(#LayoutFrame -161 1 0 0 -123 1 76 0)
1816
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   465
              #horizontalLayout: #fit
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   466
              #verticalLayout: #spreadSpace
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   467
              #horizontalSpace: 3
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   468
              #verticalSpace: 3
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   469
              #component: 
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   470
             #(#SpecCollection
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   471
                #collection: #(
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   472
                 #(#InputFieldSpec
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   473
                    #name: 'RedField'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   474
                    #model: #red
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   475
                    #type: #numberInRange
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   476
                    #numChars: 3
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   477
                    #minValue: 0
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   478
                    #maxValue: 255
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   479
                    #acceptOnPointerLeave: false
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   480
                    #extent: #(#Point 38 20)
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   481
                  )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   482
                 #(#InputFieldSpec
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   483
                    #name: 'GreenField'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   484
                    #model: #green
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   485
                    #type: #numberInRange
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   486
                    #numChars: 3
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   487
                    #minValue: 0
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   488
                    #maxValue: 255
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   489
                    #acceptOnPointerLeave: false
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   490
                    #extent: #(#Point 38 20)
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   491
                  )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   492
                 #(#InputFieldSpec
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   493
                    #name: 'BlueField'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   494
                    #model: #blue
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   495
                    #type: #numberInRange
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   496
                    #numChars: 3
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   497
                    #minValue: 0
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   498
                    #maxValue: 255
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   499
                    #acceptOnPointerLeave: false
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   500
                    #extent: #(#Point 38 20)
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   501
                  )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   502
                 )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   503
               
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   504
              )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   505
            )
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   506
           #(#VerticalPanelViewSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   507
              #name: 'HLSLabelPanel'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   508
              #layout: #(#LayoutFrame 0 0 86 0 58 0 163 0)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   509
              #horizontalLayout: #fit
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   510
              #verticalLayout: #spreadSpace
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   511
              #horizontalSpace: 3
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   512
              #verticalSpace: 3
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   513
              #component: 
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   514
             #(#SpecCollection
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   515
                #collection: #(
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   516
                 #(#LabelSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   517
                    #label: 'Hue:'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   518
                    #name: 'Label1'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   519
                    #translateLabel: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   520
                    #adjust: #right
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   521
                    #useDefaultExtent: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   522
                  )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   523
                 #(#LabelSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   524
                    #label: 'Light:'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   525
                    #name: 'Label2'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   526
                    #translateLabel: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   527
                    #adjust: #right
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   528
                    #useDefaultExtent: true
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
                 #(#LabelSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   531
                    #label: 'Sat:'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   532
                    #name: 'Label3'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   533
                    #translateLabel: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   534
                    #adjust: #right
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   535
                    #useDefaultExtent: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   536
                  )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   537
                 )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   538
               
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   539
              )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   540
            )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   541
           #(#VerticalPanelViewSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   542
              #name: 'HLSSliderPanel'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   543
              #layout: #(#LayoutFrame 62 0 86 0 -166 1 163 0)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   544
              #horizontalLayout: #fit
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   545
              #verticalLayout: #spreadSpace
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   546
              #horizontalSpace: 3
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   547
              #verticalSpace: 3
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   548
              #component: 
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   549
             #(#SpecCollection
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   550
                #collection: #(
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   551
                 #(#SliderSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   552
                    #name: 'Slider1'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   553
                    #tabable: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   554
                    #model: #hue
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   555
                    #orientation: #horizontal
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   556
                    #stop: 359
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   557
                    #step: 1
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   558
                    #keyboardStep: 1
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   559
                    #extent: #(#Point 225 16)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   560
                  )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   561
                 #(#SliderSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   562
                    #name: 'Slider2'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   563
                    #tabable: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   564
                    #model: #light
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   565
                    #orientation: #horizontal
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   566
                    #step: 1
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   567
                    #backgroundColor: #(#Color 66.9993 66.9993 66.9993)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   568
                    #keyboardStep: 1
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   569
                    #extent: #(#Point 225 16)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   570
                  )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   571
                 #(#SliderSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   572
                    #name: 'Slider3'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   573
                    #tabable: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   574
                    #model: #saturation
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   575
                    #orientation: #horizontal
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   576
                    #step: 1
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   577
                    #backgroundColor: #(#Color 66.9993 66.9993 66.9993)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   578
                    #keyboardStep: 1
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   579
                    #extent: #(#Point 225 16)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   580
                  )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   581
                 )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   582
               
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   583
              )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   584
            )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   585
           #(#VerticalPanelViewSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   586
              #name: 'HLSFieldPanel'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   587
              #layout: #(#LayoutFrame -161 1 86 0 -123 1 163 0)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   588
              #horizontalLayout: #fit
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   589
              #verticalLayout: #spreadSpace
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   590
              #horizontalSpace: 3
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   591
              #verticalSpace: 3
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   592
              #component: 
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   593
             #(#SpecCollection
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   594
                #collection: #(
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   595
                 #(#InputFieldSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   596
                    #name: 'EntryField1'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   597
                    #model: #hue
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   598
                    #type: #numberInRange
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   599
                    #numChars: 3
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   600
                    #minValue: 0
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   601
                    #maxValue: 359
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   602
                    #acceptOnPointerLeave: false
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   603
                    #extent: #(#Point 38 20)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   604
                  )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   605
                 #(#InputFieldSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   606
                    #name: 'EntryField2'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   607
                    #model: #light
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   608
                    #type: #numberInRange
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   609
                    #numChars: 3
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   610
                    #minValue: 0
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   611
                    #maxValue: 100
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   612
                    #acceptOnPointerLeave: false
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   613
                    #extent: #(#Point 38 20)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   614
                  )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   615
                 #(#InputFieldSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   616
                    #name: 'EntryField3'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   617
                    #model: #saturation
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   618
                    #type: #numberInRange
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   619
                    #numChars: 3
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   620
                    #minValue: 0
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   621
                    #maxValue: 100
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   622
                    #acceptOnPointerLeave: false
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   623
                    #extent: #(#Point 38 20)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   624
                  )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   625
                 )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   626
               
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   627
              )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   628
            )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   629
           #(#ViewSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   630
              #name: 'Box1'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   631
              #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
   632
              #level: 1
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   633
              #component: 
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   634
             #(#SpecCollection
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   635
                #collection: #(
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   636
                 #(#LabelSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   637
                    #label: 'Preview'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   638
                    #name: 'PreviewBox'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   639
                    #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
   640
                    #level: -1
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   641
                    #translateLabel: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   642
                  )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   643
                 )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   644
               
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   645
              )
1816
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   646
            )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   647
           #(#HorizontalPanelViewSpec
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   648
              #name: 'HorizontalPanel1'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   649
              #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
   650
              #horizontalLayout: #fitSpace
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   651
              #verticalLayout: #centerMax
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   652
              #horizontalSpace: 3
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   653
              #verticalSpace: 3
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   654
              #reverseOrderIfOKAtLeft: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   655
              #component: 
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   656
             #(#SpecCollection
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   657
                #collection: #(
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   658
                 #(#ActionButtonSpec
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   659
                    #label: 'Cancel'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   660
                    #name: 'CancelButton'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   661
                    #translateLabel: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   662
                    #resizeForLabel: false
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   663
                    #tabable: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   664
                    #model: #cancel
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   665
                    #useDefaultExtent: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   666
                  )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   667
                 #(#ActionButtonSpec
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   668
                    #label: 'OK'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   669
                    #name: 'OKButton'
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   670
                    #translateLabel: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   671
                    #resizeForLabel: false
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   672
                    #tabable: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   673
                    #model: #accept
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   674
                    #isDefault: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   675
                    #defaultable: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   676
                    #useDefaultExtent: true
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   677
                  )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   678
                 )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   679
               
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   680
              )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   681
            )
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   682
           #(#InputFieldSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   683
              #name: 'ColorNameField'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   684
              #layout: #(#LayoutFrame 110 0 190 0 -123 1 212 0)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   685
              #model: #colorNameHolder
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   686
              #immediateAccept: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   687
              #acceptOnReturn: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   688
              #acceptOnTab: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   689
              #acceptOnLostFocus: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   690
              #acceptOnPointerLeave: false
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   691
            )
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   692
           #(#LabelSpec
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   693
              #label: 'Color Name:'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   694
              #name: 'Label4'
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   695
              #layout: #(#LayoutFrame 0 0 190 0 106 0 212 0)
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   696
              #translateLabel: true
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   697
              #adjust: #right
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   698
            )
1816
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   699
           )
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   700
         
c4bbd0e66b5a defineCOlor UI beautified
Claus Gittinger <cg@exept.de>
parents: 1808
diff changeset
   701
        )
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   702
      )
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   703
! !
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   704
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   705
!ColorMenu::DefineColor methodsFor:'accessing'!
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   706
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   707
color
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   708
    ^Color redByte:(red value) greenByte:(green value) blueByte:(blue value)
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   709
!
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   710
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   711
color: aColor
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   712
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   713
    aColor notNil
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   714
    ifTrue:
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   715
    [
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   716
        self red   value: aColor redByte.
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   717
        self green value: aColor greenByte.
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   718
        self blue  value: aColor blueByte.
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   719
    ]
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   720
  
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   721
!
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   722
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   723
colorName
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   724
    ^ colorNameHolder value
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   725
! !
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   726
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   727
!ColorMenu::DefineColor methodsFor:'actions'!
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   728
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   729
colorChanged
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   730
    |box clr|
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   731
2167
675c1cd59a80 builder componentAt: -> self componentAt:
Claus Gittinger <cg@exept.de>
parents: 2057
diff changeset
   732
    box := self componentAt: #PreviewBox.
2057
0146794063c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   733
    box isNil ifTrue:[^ self "called before setup"].
0146794063c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   734
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   735
    clr := self color.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   736
    box backgroundColor:clr.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   737
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   738
    clr brightness < 0.5 ifTrue:[
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   739
        box foregroundColor:Color white
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   740
    ] ifFalse:[
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   741
        box foregroundColor:Color black
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   742
    ].
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   743
!
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   744
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   745
colorNameChanged
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   746
    "compute rgb and hls (if possible)"
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   747
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   748
    |clr h|
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   749
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   750
    clr := Color name:colorNameHolder value ifIllegal:nil.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   751
    clr isNil ifTrue:[
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   752
        ^ self
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   753
    ].
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
    red   value:clr redByte withoutNotifying:self.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   756
    green value:clr greenByte withoutNotifying:self.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   757
    blue  value:clr blueByte withoutNotifying:self.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   758
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   759
    h := clr hue.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   760
    h notNil ifTrue:[
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   761
        hue        value:(h rounded) withoutNotifying:self.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   762
    ].
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   763
    light      value:(clr light rounded) withoutNotifying:self.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   764
    saturation value:(clr saturation rounded) withoutNotifying:self.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   765
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   766
    self colorChanged
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   767
!
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
hlsSliderChanged
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   770
    "compute rgb"
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
    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
   773
        red    value:(r * 255 / 100) rounded withoutNotifying:self.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   774
        green  value:(g * 255 / 100) rounded withoutNotifying:self.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   775
        blue   value:(b * 255 / 100) rounded withoutNotifying:self.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   776
    ].
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   777
    colorNameHolder value:'' withoutNotifying:self.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   778
    self colorChanged
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   779
!
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   780
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   781
rgbSliderChanged
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   782
    "compute hls"
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   783
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   784
    |r g b|
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   785
2057
0146794063c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   786
    r := self red value.
0146794063c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   787
    g := self green value.
0146794063c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   788
    b := self blue value.
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   789
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   790
    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
   791
        h isNil ifTrue:[
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   792
            "/ achromatic
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   793
        ] ifFalse:[
2057
0146794063c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   794
            self hue    value:(h rounded) withoutNotifying:self.
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   795
        ].
2057
0146794063c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   796
        self light      value:(l rounded) withoutNotifying:self.
0146794063c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   797
        self saturation value:(s rounded) withoutNotifying:self.
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   798
    ].
2057
0146794063c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   799
    self colorNameHolder value:'' withoutNotifying:self.
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   800
    self colorChanged
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   801
! !
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   802
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   803
!ColorMenu::DefineColor methodsFor:'aspects'!
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   804
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   805
blue
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   806
    blue isNil ifTrue:[
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   807
        blue := 0 asValue.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   808
        blue addDependent:self.
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   809
    ].
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   810
    ^blue
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   811
!
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
colorNameHolder
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   814
    colorNameHolder isNil ifTrue:[
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   815
        colorNameHolder := '' asValue.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   816
        colorNameHolder addDependent:self.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   817
    ].
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   818
    ^colorNameHolder
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   819
!
1057
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
green
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   822
    green isNil ifTrue:[
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   823
        green := 0 asValue.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   824
        green addDependent:self.
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   825
    ].
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   826
    ^green
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   827
!
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
hue
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   830
    hue isNil ifTrue:[
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   831
        hue := 0 asValue.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   832
        hue 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
    ^hue
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   835
!
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   836
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   837
light
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   838
    light isNil ifTrue:[
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   839
        light := 0 asValue.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   840
        light addDependent:self.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   841
    ].
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   842
    ^light
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
red
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   846
    red isNil ifTrue:[
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   847
        red := 0 asValue.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   848
        red addDependent:self.
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   849
    ].
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   850
    ^red
2045
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
saturation
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   854
    saturation isNil ifTrue:[
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   855
        saturation := 0 asValue.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   856
        saturation addDependent:self.
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   857
    ].
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   858
    ^saturation
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   859
! !
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
!ColorMenu::DefineColor methodsFor:'change & update'!
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   862
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   863
update:something with:aParameter from:changedObject
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   864
    (changedObject == red
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   865
    or:[changedObject == green
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   866
    or:[changedObject == blue]]) ifTrue:[
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   867
        ^ self rgbSliderChanged
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   868
    ].
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   869
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   870
    (changedObject == hue
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   871
    or:[changedObject == light
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   872
    or:[changedObject == saturation]]) ifTrue:[
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   873
        ^ self hlsSliderChanged
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   874
    ].
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   875
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   876
    (changedObject == colorNameHolder) ifTrue:[
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   877
        ^ self colorNameChanged
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   878
    ].
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   879
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   880
    ^ super update:something with:aParameter from:changedObject
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   881
! !
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   882
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   883
!ColorMenu::DefineColor methodsFor:'startup / release'!
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   884
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   885
postBuildWith:aBuilder
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   886
    super postBuildWith:aBuilder.
2045
c33134da2d3d added hls panel;
Claus Gittinger <cg@exept.de>
parents: 1818
diff changeset
   887
    self colorChanged.
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   888
1119
11cd3ce5171b colorMenu: change labelColor to white for dark preview colors;
Claus Gittinger <cg@exept.de>
parents: 1058
diff changeset
   889
    "Modified: / 6.9.1998 / 22:55:25 / cg"
1057
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   890
! !
db1bd14803e3 free color definition added
tz
parents: 895
diff changeset
   891
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   892
!ColorMenu class methodsFor:'documentation'!
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   893
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   894
version
2184
16d3b72ca431 use inherited functionality
Claus Gittinger <cg@exept.de>
parents: 2183
diff changeset
   895
    ^ '$Header: /cvs/stx/stx/libwidg2/ColorMenu.st,v 1.29 2002-09-12 13:39:13 cg Exp $'
412
a8ad581658ec intitial checkin
ca
parents:
diff changeset
   896
! !