ImageEditor.st
author Claus Gittinger <cg@exept.de>
Tue, 16 Jan 2018 22:14:10 +0100
changeset 3519 4fbc55af0d28
parent 3513 79c3eab8cb2f
child 3526 d27e02006468
permissions -rw-r--r--
#OTHER by cg big refactoring: replaced all flyByHelpXXX sends and implementations by helpXXX. This should remove the confusion on where the tooltips should be stored and which methods need to be redefined. ATTENTION: May introduce temporary inconveniences until all other applications (in exept:xxx packages) are changed.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
400
228524287573 intitial checkin
tz
parents:
diff changeset
     1
"
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
     2
 COPYRIGHT (c) 1997-1998 by eXept Software AG
400
228524287573 intitial checkin
tz
parents:
diff changeset
     3
              All Rights Reserved
228524287573 intitial checkin
tz
parents:
diff changeset
     4
228524287573 intitial checkin
tz
parents:
diff changeset
     5
 This software is furnished under a license and may be used
228524287573 intitial checkin
tz
parents:
diff changeset
     6
 only in accordance with the terms of that license and with the
405
8546da96ab11 widgets rearranged for different fonts
tz
parents: 401
diff changeset
     7
 inclusion of the above copyright notice. This software may not
400
228524287573 intitial checkin
tz
parents:
diff changeset
     8
 be provided or otherwise made available to, or used by, any
405
8546da96ab11 widgets rearranged for different fonts
tz
parents: 401
diff changeset
     9
 other person. No title to or ownership of the software is
400
228524287573 intitial checkin
tz
parents:
diff changeset
    10
 hereby transferred.
228524287573 intitial checkin
tz
parents:
diff changeset
    11
"
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
    12
"{ Package: 'stx:libtool2' }"
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
    13
3180
9ee8f0e74b96 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3173
diff changeset
    14
"{ NameSpace: Smalltalk }"
9ee8f0e74b96 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3173
diff changeset
    15
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    16
ResourceSpecEditor subclass:#ImageEditor
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
    17
	instanceVariableNames:'imageEditView colorMapMode editMode mouseKeyColorMode
1960
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
    18
		selectedColorIndex postOpenAction imageSeqNr drawingColormap
2767
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
    19
		lastShiftUsedWrap lastGrabbedScreenArea
3379
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
    20
		allowedToChangeImageDimensionAndDepth savedImage savedFile'
3416
9d51a45479e3 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3415
diff changeset
    21
	classVariableNames:'DefaultRelativeSizes LastColormapMode LastDirectory
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
    22
		LastSizeString LastURL MaskClipboard LastDepth
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
    23
		LastNumThresholdGrayColors'
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
    24
	poolDictionaries:''
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
    25
	category:'Interface-UIPainter'
400
228524287573 intitial checkin
tz
parents:
diff changeset
    26
!
228524287573 intitial checkin
tz
parents:
diff changeset
    27
228524287573 intitial checkin
tz
parents:
diff changeset
    28
!ImageEditor class methodsFor:'documentation'!
228524287573 intitial checkin
tz
parents:
diff changeset
    29
228524287573 intitial checkin
tz
parents:
diff changeset
    30
copyright
228524287573 intitial checkin
tz
parents:
diff changeset
    31
"
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
    32
 COPYRIGHT (c) 1997-1998 by eXept Software AG
400
228524287573 intitial checkin
tz
parents:
diff changeset
    33
              All Rights Reserved
228524287573 intitial checkin
tz
parents:
diff changeset
    34
228524287573 intitial checkin
tz
parents:
diff changeset
    35
 This software is furnished under a license and may be used
228524287573 intitial checkin
tz
parents:
diff changeset
    36
 only in accordance with the terms of that license and with the
405
8546da96ab11 widgets rearranged for different fonts
tz
parents: 401
diff changeset
    37
 inclusion of the above copyright notice. This software may not
400
228524287573 intitial checkin
tz
parents:
diff changeset
    38
 be provided or otherwise made available to, or used by, any
405
8546da96ab11 widgets rearranged for different fonts
tz
parents: 401
diff changeset
    39
 other person. No title to or ownership of the software is
400
228524287573 intitial checkin
tz
parents:
diff changeset
    40
 hereby transferred.
228524287573 intitial checkin
tz
parents:
diff changeset
    41
"
228524287573 intitial checkin
tz
parents:
diff changeset
    42
!
228524287573 intitial checkin
tz
parents:
diff changeset
    43
228524287573 intitial checkin
tz
parents:
diff changeset
    44
documentation
228524287573 intitial checkin
tz
parents:
diff changeset
    45
"
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
    46
    Image Editor allows you to create, design, modify or just inspect images.
3375
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
    47
    It is also used subclasses as a tool to post-process captured screen images and
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
    48
    bitmaps in expecco.
400
228524287573 intitial checkin
tz
parents:
diff changeset
    49
228524287573 intitial checkin
tz
parents:
diff changeset
    50
    [start with:]
228524287573 intitial checkin
tz
parents:
diff changeset
    51
        ImageEditor open
941
6d75430a8120 fixed start call in docu
tz
parents: 937
diff changeset
    52
        ImageEditor openOnClass:Icon andSelector:#startIcon
3466
2d5ea09863c6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3465
diff changeset
    53
        (Image fromFile:'../../goodies/bitmaps/gifImages/garfield.gif') edit
2d5ea09863c6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3465
diff changeset
    54
        (Image fromScreen:(0@0 corner:100@100)) edit
400
228524287573 intitial checkin
tz
parents:
diff changeset
    55
228524287573 intitial checkin
tz
parents:
diff changeset
    56
    [see also:]
228524287573 intitial checkin
tz
parents:
diff changeset
    57
        ImageEditView Image
228524287573 intitial checkin
tz
parents:
diff changeset
    58
228524287573 intitial checkin
tz
parents:
diff changeset
    59
    [author:]
544
8fa6ee20c3cd help menu item aligned to the right
tz
parents: 535
diff changeset
    60
        Thomas Zwick, eXept Software AG
1806
2d642633ff7b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1799
diff changeset
    61
        Claus Gittinger, eXept Software AG
400
228524287573 intitial checkin
tz
parents:
diff changeset
    62
"
228524287573 intitial checkin
tz
parents:
diff changeset
    63
! !
228524287573 intitial checkin
tz
parents:
diff changeset
    64
228524287573 intitial checkin
tz
parents:
diff changeset
    65
!ImageEditor class methodsFor:'instance creation'!
228524287573 intitial checkin
tz
parents:
diff changeset
    66
3357
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
    67
openLoadingImageWith:aBlock modal:modalBoolean
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
    68
    "opens an Image Editor on anImage.
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
    69
     Returns the editor (to access its attributes)"
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    70
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    71
    |editor|
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    72
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    73
    editor := self new.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    74
    editor allButOpen.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    75
    aBlock value:editor.
3357
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
    76
    modalBoolean ifTrue:[
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
    77
        editor openWindowModal.
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
    78
    ] ifFalse:[
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
    79
        editor openWindow.
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
    80
    ].
2764
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
    81
    ^ editor
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
    82
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
    83
    "Modified (comment): / 07-03-2017 / 16:36:16 / cg"
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    84
!
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    85
400
228524287573 intitial checkin
tz
parents:
diff changeset
    86
openModalOnClass: aClass andSelector: aSelector
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    87
    "opens a modal Image Editor on aClass and aSelector.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    88
     Returns the real name of the edited resource method (in case, user changed it)."
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    89
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    90
    |imageEditor imageEditView className resourceClass resourceSelector| 
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
    91
400
228524287573 intitial checkin
tz
parents:
diff changeset
    92
    imageEditor := self new.
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
    93
900
5dd8303a9bb5 opens an Image Editor in any case
tz
parents: 899
diff changeset
    94
    aClass isClass  ifTrue: [className := aClass name].
5dd8303a9bb5 opens an Image Editor in any case
tz
parents: 899
diff changeset
    95
    aClass isString ifTrue: [className := aClass].      
903
63203d996e61 openModal bug fixed
tz
parents: 901
diff changeset
    96
    aClass isNil    ifTrue: [className := ''].      
400
228524287573 intitial checkin
tz
parents:
diff changeset
    97
2764
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
    98
    imageEditor postOpenAction: [
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
    99
            imageEditView := imageEditor imageEditView. 
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   100
            imageEditor loadFromOrPrepareForClass: aClass andSelector: aSelector
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   101
        ].
400
228524287573 intitial checkin
tz
parents:
diff changeset
   102
    imageEditor openModal.
228524287573 intitial checkin
tz
parents:
diff changeset
   103
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
   104
    resourceClass := imageEditView resourceClass.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
   105
    resourceSelector := imageEditView resourceSelector.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
   106
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
   107
    (resourceClass isNil or:[resourceSelector isNil]) ifTrue:[^ nil].
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
   108
    ^ Array with:resourceClass with:resourceSelector
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   109
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   110
    "
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   111
     self openModalOnClass: self andSelector: #leftMouseKeyIcon
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   112
    "
400
228524287573 intitial checkin
tz
parents:
diff changeset
   113
!
228524287573 intitial checkin
tz
parents:
diff changeset
   114
3357
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
   115
openModalOnFile:aFileName
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   116
    "opens an Image Editor on aFileName.
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   117
     Returns the editor (to access its attributes)"
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   118
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   119
    ^ self openOnFile:aFileName modal:true
3357
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
   120
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
   121
    "
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
   122
     self openModalOnFile: '../../goodies/bitmaps/gifImages/back.gif'
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
   123
    "
3411
fd6472405fd0 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3409
diff changeset
   124
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   125
    "Modified: / 07-03-2017 / 16:36:32 / cg"
3357
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
   126
!
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
   127
2764
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   128
openModalOnImage:anImage
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   129
    "opens a modal Image Editor on an image.
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   130
     Returns the modified image or nil if unsaved/unchanged"
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   131
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   132
    |imageEditor imageEditView newImage| 
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   133
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   134
    imageEditor := self new.
2767
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
   135
    imageEditor allowedToChangeImageDimensionAndDepth:false.
2764
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   136
    imageEditor postOpenAction: [
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   137
            imageEditView := imageEditor imageEditView. 
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   138
            imageEditor loadFromImage: anImage
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   139
        ].
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   140
    imageEditor openModal.
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   141
2766
88fa6c4bf6d3 changed: #openModalOnImage:
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   142
    newImage := imageEditor savedImage.
2764
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   143
    ^ newImage
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   144
!
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   145
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   146
openOnClass:aClass andSelector:aSelector
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   147
    "opens an Image Editor on aClass and aSelector.
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   148
     Returns the editor (to access its attributes)"
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   149
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   150
    ^ self openOnClass:aClass andSelector:aSelector modal:false
1057
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
   151
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   152
    "
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   153
     self openOnClass:self andSelector:#leftMouseKeyIcon
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   154
     self openOnClass:self andSelector:nil
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   155
    "
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   156
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   157
    "Modified: / 07-03-2017 / 16:36:58 / cg"
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   158
!
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   159
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   160
openOnClass:aClass andSelector:aSelector modal:modal
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   161
    "opens an Image Editor on aClass and aSelector.
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   162
     Returns the editor (to access its attributes)"
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   163
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   164
    ^ self 
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   165
        openLoadingImageWith:[:editor | 
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   166
            editor loadFromClass:(aClass theNonMetaclass) andSelector:aSelector
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   167
        ] 
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   168
        modal:modal.
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   169
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   170
    "
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   171
     self openOnClass:self andSelector:#leftMouseKeyIcon modal:true
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   172
     self openOnClass:self andSelector:nil
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   173
    "
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   174
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   175
    "Created: / 07-03-2017 / 16:34:36 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
   176
!
228524287573 intitial checkin
tz
parents:
diff changeset
   177
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   178
openOnFile:aFileName
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   179
    "opens an Image Editor on aFileName.
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   180
     Returns the editor (to access its attributes)"
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   181
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   182
    ^ self openOnFile:aFileName modal:false   
1057
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
   183
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   184
    "
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
   185
     self openOnFile: '../../goodies/bitmaps/gifImages/back.gif'
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   186
    "
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   187
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   188
    "Modified: / 07-03-2017 / 16:37:33 / cg"
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   189
!
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   190
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   191
openOnFile:aFileName modal:modal
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   192
    "opens an Image Editor on aFileName.
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   193
     Returns the editor (to access its attributes)"
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   194
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   195
    ^ self 
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   196
        openLoadingImageWith:[:editor | 
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   197
            editor loadFromFile:aFileName.
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   198
        ] 
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   199
        modal:modal.
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   200
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   201
    "
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   202
     self openOnFile: '../../goodies/bitmaps/gifImages/back.gif' modal:false
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   203
     self openOnFile: '../../goodies/bitmaps/gifImages/back.gif' modal:true
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   204
    "
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   205
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   206
    "Created: / 07-03-2017 / 16:33:12 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
   207
!
228524287573 intitial checkin
tz
parents:
diff changeset
   208
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   209
openOnImage:anImage
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   210
    "opens an Image Editor on anImage.
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   211
     Returns the editor (to access its attributes)"
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   212
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   213
    ^ self 
3375
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
   214
        openLoadingImageWith:[:editor | editor loadFromImage: anImage ] 
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
   215
        modal:false
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
   216
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   217
    "
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   218
     self openOnImage: Icon startIcon
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   219
    "
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   220
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   221
    "Modified: / 07-03-2017 / 16:37:57 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
   222
! !
228524287573 intitial checkin
tz
parents:
diff changeset
   223
228524287573 intitial checkin
tz
parents:
diff changeset
   224
!ImageEditor class methodsFor:'accessing'!
228524287573 intitial checkin
tz
parents:
diff changeset
   225
228524287573 intitial checkin
tz
parents:
diff changeset
   226
listOfColorMaps
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
   227
    "returns the list of default color maps for a new image"
400
228524287573 intitial checkin
tz
parents:
diff changeset
   228
228524287573 intitial checkin
tz
parents:
diff changeset
   229
    |colorMap|
898
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   230
400
228524287573 intitial checkin
tz
parents:
diff changeset
   231
    (colorMap := OrderedCollection new)
228524287573 intitial checkin
tz
parents:
diff changeset
   232
        add: Color black;
228524287573 intitial checkin
tz
parents:
diff changeset
   233
        add: Color white;
228524287573 intitial checkin
tz
parents:
diff changeset
   234
        add: Color red;
228524287573 intitial checkin
tz
parents:
diff changeset
   235
        add: Color green;
228524287573 intitial checkin
tz
parents:
diff changeset
   236
        add: Color blue;
228524287573 intitial checkin
tz
parents:
diff changeset
   237
        add: Color cyan;
228524287573 intitial checkin
tz
parents:
diff changeset
   238
        add: Color yellow;
228524287573 intitial checkin
tz
parents:
diff changeset
   239
        add: Color magenta;
898
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   240
        add: (Color redByte: 127 greenByte:   0 blueByte:   0);
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   241
        add: (Color redByte:   0 greenByte: 127 blueByte:   0);
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   242
        add: (Color redByte:   0 greenByte:   0 blueByte: 127);
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   243
        add: (Color redByte:   0 greenByte: 127 blueByte: 127);
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   244
        add: (Color redByte: 127 greenByte: 127 blueByte:   0);
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   245
        add: (Color redByte: 127 greenByte:   0 blueByte: 127);
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   246
        add: (Color redByte: 127 greenByte: 127 blueByte: 127);
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   247
        add: (Color redByte: 170 greenByte: 170 blueByte: 170).
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   248
3346
15a3fc3d13d9 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3344
diff changeset
   249
    0 to: 5 do: [:r|                                                    
15a3fc3d13d9 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3344
diff changeset
   250
        0 to: 5 do: [:g|
15a3fc3d13d9 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3344
diff changeset
   251
            0 to: 5 do: [:b|
898
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   252
                colorMap add: (Color redByte: (r*255//5) ceiling greenByte: (g*255//5) ceiling blueByte: (b*255//5) ceiling)
400
228524287573 intitial checkin
tz
parents:
diff changeset
   253
            ]
228524287573 intitial checkin
tz
parents:
diff changeset
   254
        ]
228524287573 intitial checkin
tz
parents:
diff changeset
   255
    ].
228524287573 intitial checkin
tz
parents:
diff changeset
   256
3346
15a3fc3d13d9 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3344
diff changeset
   257
    1 to: 25 do: [:g|                             
898
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   258
        colorMap add: (Color redByte: (g*255//26) ceiling greenByte: (g*255//26) ceiling blueByte: (g*255//26) ceiling)
400
228524287573 intitial checkin
tz
parents:
diff changeset
   259
    ].
228524287573 intitial checkin
tz
parents:
diff changeset
   260
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   261
    ^ Dictionary new
2571
8b182cc4cac7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2567
diff changeset
   262
        at: #depth32 put:(FixedPalette redShift:16 redMask:16rFF greenShift:8 greenMask:16rFF blueShift:0 blueMask:16rFF);
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   263
        at: #depth24 put:(FixedPalette redShift:16 redMask:16rFF greenShift:8 greenMask:16rFF blueShift:0 blueMask:16rFF);
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   264
        at: #masked24 put:(FixedPalette redShift:16 redMask:16rFF greenShift:8 greenMask:16rFF blueShift:0 blueMask:16rFF);
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   265
        at: #depth16 put:(FixedPalette redShift:11 redMask:16r1F greenShift:5 greenMask:16r3F blueShift:0 blueMask:16r1F);
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   266
        at: #masked16 put:(FixedPalette redShift:11 redMask:16r1F greenShift:5 greenMask:16r3F blueShift:0 blueMask:16r1F);
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   267
        at: #depth8  put: colorMap;
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   268
        at: #masked8 put: colorMap;
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   269
        at: #depth4  put: (colorMap copyFrom: 1 to: 16);
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   270
        at: #masked4 put: (colorMap copyFrom: 1 to: 16);
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   271
        at: #depth2  put: (colorMap copyFrom: 1 to: 4);
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   272
        at: #masked2 put: (colorMap copyFrom: 1 to: 4);
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   273
        at: #depth1  put: (colorMap copyFrom: 1 to: 2);
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   274
        at: #masked1 put: (colorMap copyFrom: 1 to: 2);
400
228524287573 intitial checkin
tz
parents:
diff changeset
   275
        yourself
228524287573 intitial checkin
tz
parents:
diff changeset
   276
!
228524287573 intitial checkin
tz
parents:
diff changeset
   277
228524287573 intitial checkin
tz
parents:
diff changeset
   278
listOfDefaultSizes
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
   279
    "returns the list of default sizes for a new image"
400
228524287573 intitial checkin
tz
parents:
diff changeset
   280
1960
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
   281
    ^ #('8x8' '16x16' '22x22' '32x32' '48x48' '64x64')
932
7111238cda23 fixed dimension of new-image dialog.
Claus Gittinger <cg@exept.de>
parents: 930
diff changeset
   282
7111238cda23 fixed dimension of new-image dialog.
Claus Gittinger <cg@exept.de>
parents: 930
diff changeset
   283
    "Modified: / 31.7.1998 / 01:57:34 / cg"
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   284
!
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   285
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   286
namesOfColorMaps
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   287
    ^ Dictionary new
2571
8b182cc4cac7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2567
diff changeset
   288
        at: #depth32 put: '32-plane (rgba)';
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   289
        at: #depth24 put: '24-plane';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   290
        at: #masked24 put: '24-plane + mask';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   291
        at: #depth16 put: '16-plane';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   292
        at: #masked16 put: '16-plane + mask';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   293
        at: #depth8  put: ' 8-plane';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   294
        at: #masked8 put: ' 8-plane + mask';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   295
        at: #depth4  put: ' 4-plane';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   296
        at: #masked4 put: ' 4-plane + mask';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   297
        at: #depth2  put: ' 2-plane';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   298
        at: #masked2 put: ' 2-plane + mask';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   299
        at: #depth1  put: ' 1-plane';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   300
        at: #masked1 put: ' 1-plane + mask' ;
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   301
        yourself
400
228524287573 intitial checkin
tz
parents:
diff changeset
   302
! !
228524287573 intitial checkin
tz
parents:
diff changeset
   303
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   304
!ImageEditor class methodsFor:'help specs'!
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   305
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   306
helpPairs
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   307
    "This resource specification was automatically generated
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   308
     by the UIHelpTool of ST/X."
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   309
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   310
    "Do not manually edit this!! If it is corrupted,
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   311
     the UIHelpTool may not be able to read the specification."
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   312
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   313
    "
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   314
     UIHelpTool openOnClass:ImageEditor
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   315
    "
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   316
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   317
    <resource: #help>
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   318
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   319
    ^ #(
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   320
3421
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
   321
#drawingColor1
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
   322
'The color associated to the left mouse button.\Also the color used in fill operations'
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
   323
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
   324
#drawingColor2
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
   325
'The color associated to the right mouse button.\Also the second color used in gradient fill operations'
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
   326
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
   327
#drawingAlpha
3488
e9655ba452c7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3487
diff changeset
   328
'The alpha value (in percent) to be used in edit operations.\If the "mask"-color is selected, only the alpha value will be changed.\Otherwise, the selected color plus this alpha value will be used for drawing'
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
   329
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   330
#autoCropAll
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   331
'Find and remove all borders'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   332
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   333
#autoCropBottom
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   334
'Find and remove bottom border'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   335
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   336
#autoCropLeft
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   337
'Find and remove left border'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   338
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   339
#autoCropRight
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   340
'Find and remove right border'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   341
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   342
#autoCropTop
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   343
'Find and remove top border'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   344
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   345
#colorMap
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   346
'ColorMap functions'
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   347
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   348
#colorMap1
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   349
'Convert to depth-1 image'
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   350
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   351
#colorMap1M
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   352
'Convert to depth-1 image plus mask'
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   353
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   354
#colorMap2
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   355
'Convert to depth-2 image'
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   356
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   357
#colorMap24
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   358
'Convert to depth-24 image (rgb)'
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   359
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   360
#colorMap2M
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   361
'Convert to depth-2 image plus mask'
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   362
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   363
#colorMap32
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   364
'Convert to depth-32 image (rgba)'
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   365
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   366
#colorMap4
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   367
'Convert to depth-4 image'
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   368
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   369
#colorMap4M
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   370
'Convert to depth-4 image plus mask'
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   371
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   372
#colorMap8
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   373
'Convert to depth-8 image'
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   374
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   375
#colorMap8M
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   376
'Convert to depth-8 image plus mask'
2571
8b182cc4cac7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2567
diff changeset
   377
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   378
#colorMapTable
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   379
'Shows a list of used colors of the image'
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   380
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   381
#compressColormap
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   382
'Remove unneeded entries from the colorMap'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   383
1045
c387bcacdf37 renamed - crob -> crop
Claus Gittinger <cg@exept.de>
parents: 1033
diff changeset
   384
#cropAll
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   385
'Crop (cut off) all four sides by the amounts entered into the above fields.'
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   386
1045
c387bcacdf37 renamed - crob -> crop
Claus Gittinger <cg@exept.de>
parents: 1033
diff changeset
   387
#cropBottom
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   388
'Cut off the specified number of pixels at the bottom'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   389
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   390
#cropBySelectingArea
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   391
'Select new area in the right detail view.'
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   392
1045
c387bcacdf37 renamed - crob -> crop
Claus Gittinger <cg@exept.de>
parents: 1033
diff changeset
   393
#cropLeft
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   394
'Cut off the specified number of pixels at the left'
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   395
1045
c387bcacdf37 renamed - crob -> crop
Claus Gittinger <cg@exept.de>
parents: 1033
diff changeset
   396
#cropManual
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   397
'Specify border(s) to remove.'
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   398
1045
c387bcacdf37 renamed - crob -> crop
Claus Gittinger <cg@exept.de>
parents: 1033
diff changeset
   399
#cropRight
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   400
'Cut off the specified number of pixels at the right'
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   401
1045
c387bcacdf37 renamed - crob -> crop
Claus Gittinger <cg@exept.de>
parents: 1033
diff changeset
   402
#cropTop
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   403
'Cut off the specified number of pixels at the top'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   404
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   405
#cropubImage
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   406
'Select a subarea as the image''s new dimension'
487
6c336c183330 info bar as subSpec to class ToolApplicationModel moved
tz
parents: 475
diff changeset
   407
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   408
#drawModeBox
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   409
'Rectangle Drawing Mode'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   410
2375
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
   411
#drawModeCircle
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   412
'Circle Drawing Mode'
2375
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
   413
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   414
#drawModeCopy
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   415
'Area Copy Mode'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   416
3423
1b9fb486b83c #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3422
diff changeset
   417
#drawModeCropSubImage
1b9fb486b83c #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3422
diff changeset
   418
'Select and extract a subimage'
1b9fb486b83c #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3422
diff changeset
   419
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   420
#drawModeFill
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   421
'Flood Fill Mode'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   422
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   423
#drawModeFilledBox
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   424
'Filled Rectangle Drawing Mode'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   425
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   426
#drawModeFilledCircle
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   427
'Filled Circle Drawing Mode'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   428
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   429
#drawModeMaskOutsideCircle
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   430
'Mask everything outside a Circle'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   431
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   432
#drawModeMaskOutsideRectangle
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   433
'Mask everything outside a Rectangle'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   434
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   435
#drawModePaste
3512
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
   436
'Paste-Over Mode (only paste pixels; keep mask as is)'
914
b4f32d092c8b added paste-under;
Claus Gittinger <cg@exept.de>
parents: 911
diff changeset
   437
b4f32d092c8b added paste-under;
Claus Gittinger <cg@exept.de>
parents: 911
diff changeset
   438
#drawModePasteUnder
3512
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
   439
'Paste-Under Mode (only paste previously masked pixels)'
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   440
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   441
#drawModePasteWithMask
3512
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
   442
'Paste-with-Mask Mode (both pixel and mask are pasted)'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   443
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   444
#drawModePoint
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   445
'Point Drawing Mode'
2375
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
   446
1639
8f2059cc287c checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1637
diff changeset
   447
#drawModeSpecial
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   448
'Special operations (select rectangle, then choose operation)'
1639
8f2059cc287c checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1637
diff changeset
   449
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   450
#drawModeSpray
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   451
'Spray Drawing Mode'
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   452
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   453
#edit3DProjection
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   454
'Generate a 3D projection'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   455
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   456
#editFlipHorizontal
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   457
'Flip the image horizontally'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   458
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   459
#editFlipVertical
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   460
'Flip the image vertically'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   461
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   462
#editMagnifyImage
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   463
'Magnify the image'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   464
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   465
#editNegate
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   466
'Invert the images colors'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   467
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   468
#editResize
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   469
'Resize the image (preserving the old image)'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   470
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   471
#editRotate
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   472
'Rotate the image'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   473
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   474
#fileEditMask
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   475
'Load Mask from a File'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   476
2701
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
   477
#fileGrabImageFromScreen
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   478
'Pick an image from the screen (specify area)'
2701
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
   479
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
   480
#fileGrabImageFromWindow
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   481
'Pick an image from a window on the screen (click on window)'
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   482
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   483
#fileLoadFromClass
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   484
'Select and load an image from a resource method'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   485
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   486
#fileLoadFromFile
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   487
'Select and load an image from a file'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   488
2796
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
   489
#fileLoadFromURL
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
   490
'Load an image from the net, given its URL'
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
   491
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   492
#fileNewImage
914
b4f32d092c8b added paste-under;
Claus Gittinger <cg@exept.de>
parents: 911
diff changeset
   493
'Create a new image'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   494
3200
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
   495
#fileNewImageFromClipboard
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
   496
'Create a new image and initialize it from the clipboard'
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
   497
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
   498
#fileNewMaskFromClipboard
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
   499
'Paste the image in the clipboard as a mask. Must be a depth-1 image'
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
   500
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   501
#filePrint
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   502
'Print the image on a postscript printer'
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   503
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   504
#filePrint
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   505
'Print'
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   506
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   507
#fileSave
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   508
'Save the image'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   509
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   510
#fileSaveAs
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   511
'Save the image to a file'
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   512
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   513
#fileSaveButtonImageAs
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   514
'Save an image of a button with the image to a file (for html use)'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   515
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   516
#fileSaveMaskAs
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   517
'Save the mask of the image to a file'
1613
1d4f11252d3b saveAsButtonImage added
ca
parents: 1611
diff changeset
   518
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   519
#fileSaveMethod
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   520
'Save the image as resource method in the current class and selector'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   521
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   522
#fileSaveMethodAs
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   523
'Save the image as resource method in a class'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   524
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   525
#floodFillMaxError
3433
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
   526
'Specify the max. allowed deviation from the clicked pixel in a flood-fill operation.\Pixels where the hue/light values differ less than that fraction\will be included in the fill.\The range must be between 0 and 1. With 0, only areas with exactly the same pixel will be filled.\With 1, every other pixel is included.\\When filling gradiented areas, start with small values, such as 0.05, and increase slowly (undo and try with higher value).\This is especially useful when masking background areas from screenshots.'
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   527
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   528
#magnificationNumber
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   529
'Shows the current magnification'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   530
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   531
#magnifyImageDown
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   532
'Decrease magnification'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   533
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   534
#magnifyImageUp
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   535
'Increase magnification'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   536
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   537
#mouseKeyColorMode
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   538
'Toggle between left and right mouse button color'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   539
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   540
#nextImageInSequence
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   541
'Go to the next image in the animated gif image sequence.'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   542
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   543
#previewView
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   544
'Shows a preview of the image'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   545
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   546
#previousImageInSequence
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   547
'Go to the previous image in the animated gif image sequence.'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   548
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   549
#settingsGridMagnification
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   550
'Change the grid magnification of the edit view'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   551
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   552
#xdrawModeBox
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   553
'Rectangle'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   554
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   555
#xdrawModeCopy
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   556
'Copy'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   557
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   558
#xdrawModeFill
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   559
'Flood-fill'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   560
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   561
#xdrawModeFilledBox
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   562
'Filled rectangle'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   563
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   564
#xdrawModePaste
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   565
'Paste'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   566
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   567
#xdrawModePasteUnder
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   568
'Paste under'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   569
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   570
#xdrawModePasteWithMask
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   571
'Paste with Mask'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   572
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   573
#xdrawModePoint
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   574
'Point'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   575
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   576
#xfileGrabImage
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   577
'Pick from screen'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   578
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   579
#xfileLoadFromClass
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   580
'Load from method...'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   581
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   582
#xfileLoadFromFile
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   583
'Load from file...'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   584
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   585
#xfileNewImage
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   586
'New image'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   587
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   588
#xfileSaveAs
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   589
'Save to file...'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   590
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   591
#xfileSaveMaskAs
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   592
'Save mask to file...'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   593
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   594
#xfileSaveMethod
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   595
'Save as method'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   596
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   597
#xfileSaveMethodAs
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   598
'Save as Method...'
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   599
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   600
)
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   601
3512
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
   602
    "Modified: / 07-12-2017 / 15:32:58 / cg"
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   603
!
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   604
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   605
helpSpec
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   606
    <resource: #programHelp>
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   607
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   608
    ^super helpSpec addPairsFrom:(self helpPairs)
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   609
3513
79c3eab8cb2f #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3512
diff changeset
   610
    "Modified: / 16-02-2017 / 12:30:55 / cg"
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   611
! !
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   612
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
   613
!ImageEditor class methodsFor:'image specs'!
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
   614
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   615
brighterIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   616
    "This resource specification was automatically generated
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   617
     by the ImageEditor of ST/X."
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   618
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   619
    "Do not manually edit this!! If it is corrupted,
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   620
     the ImageEditor may not be able to read the specification."
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   621
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   622
    "
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   623
     self brighterIcon inspect
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   624
     ImageEditor openOnClass:self andSelector:#brighterIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   625
     Icon flushCachedIcons
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   626
    "
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   627
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   628
    <resource: #image>
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   629
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   630
    ^Icon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   631
        constantNamed:'ImageEditor class brighterIcon'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   632
        ifAbsentPut:[(Depth8Image width:14 height:14) bits:(ByteArray fromPackedString:'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   633
@PDA@PDA@PDA@PDA@PG%9^W%9^W%;>?/;>?/;>W%9^W%9^W/;>?/;>?/9^W%9^W%A [/;>?/;>?%9^W%9^TFA.?/;>?/;>W%9^W%9PXF;>?/;>?/9^W%A XF
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   634
A XFA [/;>?%9^TFA XFA XFA.?/;>W%9^W%9PXF;>?/;>?/9^W%9^W%A [/;>?/;>?%9^W%9^TFA.?/;>?/;>W%9^W%9^W/;>?/;>?/9^W%9^W%9^?/;>?/
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   635
;><A@PDA@PDA@PDA@PDA@P@a')
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   636
            colorMapFromArray:#[88 88 88 0 0 0 255 0 0 0 255 0 0 0 255 0 255 255 255 255 127 255 0 255 127 0 0 0 127 0 0 0 127 0 127 127 127 127 0 127 0 127 127 127 127 170 170 170 0 0 51 0 0 102 0 0 153 0 0 204 0 51 0 0 51 51 0 51 102 0 51 153 0 51 204 0 51 255 0 102 0 0 102 51 0 102 102 0 102 153 0 102 204 0 102 255 0 153 0 0 153 51 0 153 102 0 153 153 0 153 204 0 153 255 0 204 0 0 204 51 0 204 102 0 204 153 0 204 204 0 204 255 0 255 51 0 255 102 0 255 153 0 255 204 51 0 0 51 0 51 51 0 102 51 0 153 51 0 204 51 0 255 51 51 0 51 51 51 51 51 102 51 51 153 51 51 204 51 51 255 51 102 0 51 102 51 51 102 102 51 102 153 51 102 204 51 102 255 51 153 0 51 153 51 51 153 102 51 153 153 51 153 204 51 153 255 51 204 0 51 204 51 51 204 102 51 204 153 51 204 204 51 204 255 51 255 0 51 255 51 51 255 102 51 255 153 51 255 204 51 255 255 102 0 0 102 0 51 102 0 102 102 0 153 102 0 204 102 0 255 102 51 0 102 51 51 102 51 102 102 51 153 102 51 204 102 51 255 102 102 0 102 102 51 102 102 102 102 102 153 102 102 204 102 102 255 102 153 0 102 153 51 102 153 102 102 153 153 102 153 204 102 153 255 102 204 0 102 204 51 102 204 102 102 204 153 102 204 204 102 204 255 102 255 0 102 255 51 102 255 102 102 255 153 102 255 204 102 255 255 153 0 0 153 0 51 153 0 102 153 0 153 153 0 204 153 0 255 153 51 0 153 51 51 153 51 102 153 51 153 153 51 204 153 51 255 153 102 0 153 102 51 153 102 102 153 102 153 153 102 204 153 102 255 153 153 0 153 153 51 153 153 102 153 153 153 153 153 204 153 153 255 153 204 0 153 204 51 153 204 102 153 204 153 153 204 204 153 204 255 153 255 0 153 255 51 153 255 102 153 255 153 153 255 204 153 255 255 204 0 0 204 0 51 204 0 102 204 0 153 204 0 204 204 0 255 204 51 0 204 51 51 204 51 102 204 51 153 204 51 204 204 51 255 204 102 0 204 102 51 204 102 102 204 102 153 204 102 204 204 102 255 204 153 0 204 153 51 204 153 102 204 153 153 204 153 204 204 153 255 204 204 0 204 204 51 204 204 102 204 204 153 204 204 204 204 204 255 204 255 0 204 255 51 204 255 102 204 255 153 204 255 204 204 255 255 255 0 51 255 0 102 255 0 153 255 0 204 255 51 0 255 51 51 255 51 102 255 51 153 255 51 204 255 51 255 255 102 0 255 102 51 255 102 102 255 102 153 255 102 204 255 102 255 255 153 0 255 153 51 255 153 102 255 153 153 255 153 204 255 153 255 255 204 0 255 204 51 255 204 102 255 204 153 255 204 204 255 204 255 255 255 51 255 255 102 255 255 153 255 255 204 255 255 255 9 9 9 19 19 19 29 29 29 39 39 39 49 49 49 58 58 58 68 68 68 78 78 78 98 98 98 107 107 107 117 117 117 137 137 137 147 147 147 156 156 156 166 166 166]
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   637
            mask:((ImageMask width:14 height:14) bits:(ByteArray fromPackedString:'@@C??O?<??3??O?<??3??O?<??3??O?<??0@@@@a'); yourself); yourself]
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   638
!
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   639
2272
d1923697d456 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2260
diff changeset
   640
circleIcon
d1923697d456 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2260
diff changeset
   641
    "This resource specification was automatically generated
d1923697d456 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2260
diff changeset
   642
     by the ImageEditor of ST/X."
3442
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   643
2272
d1923697d456 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2260
diff changeset
   644
    "Do not manually edit this!! If it is corrupted,
d1923697d456 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2260
diff changeset
   645
     the ImageEditor may not be able to read the specification."
3442
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   646
2272
d1923697d456 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2260
diff changeset
   647
    "
d1923697d456 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2260
diff changeset
   648
     self circleIcon inspect
d1923697d456 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2260
diff changeset
   649
     ImageEditor openOnClass:self andSelector:#circleIcon
3442
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   650
     Icon flushCachedIcons
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   651
    "
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   652
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   653
    <resource: #image>
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   654
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   655
    ^Icon
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   656
        constantNamed:'ImageEditor class circleIcon'
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   657
        ifAbsentPut:[(Depth1Image width:14 height:14) bits:(ByteArray fromPackedString:'@@@@@@QAAD@@@C@X@@@@@@@CLA @@@Q@AD@@@@@a')
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   658
            colorMapFromArray:#[0 0 0 127 127 127]
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   659
            mask:((ImageMask width:14 height:14) bits:(ByteArray fromPackedString:'@@@@@@_@CF@PDC@XH@  BB@HLA PD@1 A<@@@@@a'); yourself); yourself]
2272
d1923697d456 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2260
diff changeset
   660
!
d1923697d456 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2260
diff changeset
   661
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   662
copyIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   663
    <resource: #image>
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   664
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   665
     by the ImageEditor of ST/X."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   666
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   667
     the ImageEditor may not be able to read the specification."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   668
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   669
     self copyIcon inspect
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   670
     ImageEditor openOnClass:self andSelector:#copyIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   671
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   672
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   673
    ^ Icon constantNamed:'ImageEditor class copyIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   674
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   675
            (Depth2Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   676
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   677
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   678
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   679
                bitsPerSample:(#( 2 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   680
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   681
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   682
                            fromPackedString:'@@@@@@@@@@@** @@J)UUTB*Z*)@*&**PJ)**$B*Z*)@*&**PJ)**$@@Z*)@@F**P@AUUT@@@@@@b');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   683
                colorMapFromArray:#[ 0 0 0 0 0 128 255 255 255 ];
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   684
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   685
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   686
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   687
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   688
                                        fromPackedString:'@@C? O>@??3??O?<??3??O?<??3??@_<A?0@@@@a');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   689
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   690
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   691
        ]
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   692
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   693
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   694
cropSubImageIcon
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   695
    "This resource specification was automatically generated
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   696
     by the ImageEditor of ST/X."
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   697
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   698
    "Do not manually edit this!! If it is corrupted,
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   699
     the ImageEditor may not be able to read the specification."
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   700
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   701
    "
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   702
     self cropSubImageIcon inspect
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   703
     ImageEditor openOnClass:self andSelector:#cropSubImageIcon
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   704
     Icon flushCachedIcons
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   705
    "
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   706
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   707
    <resource: #image>
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   708
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   709
    ^Icon
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   710
        constantNamed:'ImageEditor class cropSubImageIcon'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   711
        ifAbsentPut:[(Depth2Image width:14 height:14) bits:(ByteArray fromPackedString:'@@@@@@@@@@@@@@@@@@@@@@J**@@BUU @@%UX@@IUV@@BUU @@%UX@@J**@@@@@@@@@@@@@@@@@@b')
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   712
            colorMapFromArray:#[0 0 0 255 255 255 127 127 127 0 255 0]
3464
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
   713
            mask:((ImageMask width:14 height:14) bits:(ByteArray fromPackedString:'??2@AH@D.@R?9K?$''>R_9I?$''?R_=HA4 @S??@@a'); yourself); yourself]
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   714
!
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   715
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   716
darkerIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   717
    "This resource specification was automatically generated
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   718
     by the ImageEditor of ST/X."
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   719
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   720
    "Do not manually edit this!! If it is corrupted,
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   721
     the ImageEditor may not be able to read the specification."
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   722
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   723
    "
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   724
     self darkerIcon inspect
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   725
     ImageEditor openOnClass:self andSelector:#darkerIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   726
     Icon flushCachedIcons
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   727
    "
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   728
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   729
    <resource: #image>
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   730
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   731
    ^Icon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   732
        constantNamed:'ImageEditor class darkerIcon'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   733
        ifAbsentPut:[(Depth8Image width:14 height:14) bits:(ByteArray fromPackedString:'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   734
@PDA@PDA@PDA@PDA@PG/;>?/;>?/9^W%9^W%9^?/;>?/;>?%9^W%9^W%;>?/;>?/;>W%9^W%9^W/;>?/;>?/9^W%9^W%9^?/;>?/;>?%9^W%9^W%;>?/A XF
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   735
A XFA [%9^W/;><FA XFA XFA.W%9^?/;>?/;>?%9^W%9^W%;>?/;>?/;>W%9^W%9^W/;>?/;>?/9^W%9^W%9^?/;>?/;>?%9^W%9^W%;>?/;>?/;>W%9^W%
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   736
9^TA@PDA@PDA@PDA@PDA@P@a')
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   737
            colorMapFromArray:#[88 88 88 0 0 0 255 0 0 0 255 0 0 0 255 0 255 255 255 255 127 255 0 255 127 0 0 0 127 0 0 0 127 0 127 127 127 127 0 127 0 127 127 127 127 170 170 170 0 0 51 0 0 102 0 0 153 0 0 204 0 51 0 0 51 51 0 51 102 0 51 153 0 51 204 0 51 255 0 102 0 0 102 51 0 102 102 0 102 153 0 102 204 0 102 255 0 153 0 0 153 51 0 153 102 0 153 153 0 153 204 0 153 255 0 204 0 0 204 51 0 204 102 0 204 153 0 204 204 0 204 255 0 255 51 0 255 102 0 255 153 0 255 204 51 0 0 51 0 51 51 0 102 51 0 153 51 0 204 51 0 255 51 51 0 51 51 51 51 51 102 51 51 153 51 51 204 51 51 255 51 102 0 51 102 51 51 102 102 51 102 153 51 102 204 51 102 255 51 153 0 51 153 51 51 153 102 51 153 153 51 153 204 51 153 255 51 204 0 51 204 51 51 204 102 51 204 153 51 204 204 51 204 255 51 255 0 51 255 51 51 255 102 51 255 153 51 255 204 51 255 255 102 0 0 102 0 51 102 0 102 102 0 153 102 0 204 102 0 255 102 51 0 102 51 51 102 51 102 102 51 153 102 51 204 102 51 255 102 102 0 102 102 51 102 102 102 102 102 153 102 102 204 102 102 255 102 153 0 102 153 51 102 153 102 102 153 153 102 153 204 102 153 255 102 204 0 102 204 51 102 204 102 102 204 153 102 204 204 102 204 255 102 255 0 102 255 51 102 255 102 102 255 153 102 255 204 102 255 255 153 0 0 153 0 51 153 0 102 153 0 153 153 0 204 153 0 255 153 51 0 153 51 51 153 51 102 153 51 153 153 51 204 153 51 255 153 102 0 153 102 51 153 102 102 153 102 153 153 102 204 153 102 255 153 153 0 153 153 51 153 153 102 153 153 153 153 153 204 153 153 255 153 204 0 153 204 51 153 204 102 153 204 153 153 204 204 153 204 255 153 255 0 153 255 51 153 255 102 153 255 153 153 255 204 153 255 255 204 0 0 204 0 51 204 0 102 204 0 153 204 0 204 204 0 255 204 51 0 204 51 51 204 51 102 204 51 153 204 51 204 204 51 255 204 102 0 204 102 51 204 102 102 204 102 153 204 102 204 204 102 255 204 153 0 204 153 51 204 153 102 204 153 153 204 153 204 204 153 255 204 204 0 204 204 51 204 204 102 204 204 153 204 204 204 204 204 255 204 255 0 204 255 51 204 255 102 204 255 153 204 255 204 204 255 255 255 0 51 255 0 102 255 0 153 255 0 204 255 51 0 255 51 51 255 51 102 255 51 153 255 51 204 255 51 255 255 102 0 255 102 51 255 102 102 255 102 153 255 102 204 255 102 255 255 153 0 255 153 51 255 153 102 255 153 153 255 153 204 255 153 255 255 204 0 255 204 51 255 204 102 255 204 153 255 204 204 255 204 255 255 255 51 255 255 102 255 255 153 255 255 204 255 255 255 9 9 9 19 19 19 29 29 29 39 39 39 49 49 49 58 58 58 68 68 68 78 78 78 98 98 98 107 107 107 117 117 117 137 137 137 147 147 147 156 156 156 166 166 166]
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   738
            mask:((ImageMask width:14 height:14) bits:(ByteArray fromPackedString:'@@C??O?<??3??O?<??3??O?<??3??O?<??0@@@@a'); yourself); yourself]
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   739
!
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   740
2155
bfc839d08928 Add #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 2136
diff changeset
   741
defaultIcon
bfc839d08928 Add #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 2136
diff changeset
   742
    <resource: #programImage>
bfc839d08928 Add #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 2136
diff changeset
   743
bfc839d08928 Add #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 2136
diff changeset
   744
    ^ ToolbarIconLibrary startImageEditorIcon
bfc839d08928 Add #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 2136
diff changeset
   745
!
bfc839d08928 Add #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 2136
diff changeset
   746
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   747
editIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   748
    "This resource specification was automatically generated
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   749
     by the ImageEditor of ST/X."
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   750
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   751
    "Do not manually edit this!! If it is corrupted,
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   752
     the ImageEditor may not be able to read the specification."
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   753
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   754
    "
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   755
     self editIcon inspect
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   756
     ImageEditor openOnClass:self andSelector:#editIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   757
     Icon flushCachedIcons
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   758
    "
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   759
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   760
    <resource: #image>
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   761
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   762
    ^Icon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   763
        constantNamed:'ImageEditor class editIcon'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   764
        ifAbsentPut:[(Depth8Image width:15 height:16) bits:(ByteArray fromPackedString:'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   765
@@@@@@@3V41AJ0T@@@@@@@@@@B1(TD4>EP@@@@@@@@@@@CA!!S4X2D@@@@@@@@@@@LV)XTTHX@@@@@@@@@@@@K6UTS$LR@@@@@@@@@@@9OE9VRQ8@@@@@@@@@
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   766
@@@8Z5%WR!!P@@@@@@@@@@B8;X5)RG2@@@@@@@@@@@CY-W51SF @@@@@@@@@@@B5)XE4%E0@@@@@@@@@@@B%,Y3TO@@@@@@@@@@@@@BM,M04@@@@@@@@@@@@@
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   767
@@ IDP@@@@@@@@@@@@@@@@\K@@@@@@@@@@@@@@@@@A,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@')
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   768
            colorMapFromArray:#[0 0 0 0 137 0 0 206 0 87 87 87 133 60 36 145 109 112 155 31 0 160 115 98 161 124 106 163 140 130 166 46 5 169 113 95 174 218 230 182 93 58 183 59 8 186 100 65 192 147 138 193 129 103 193 132 116 195 100 52 195 120 93 197 82 32 204 208 220 205 177 176 207 90 27 210 109 64 210 140 105 213 175 169 213 217 227 215 172 138 220 114 42 222 120 43 222 209 212 223 137 33 223 153 96 226 180 137 228 90 9 228 142 66 232 174 56 234 184 145 240 178 78 241 195 142 241 212 187 242 102 12 242 177 95 245 202 137 245 209 172 247 181 30 247 183 8 247 198 128 248 122 26 248 194 1 248 198 0 248 201 137 248 203 113 248 214 181 249 193 57 249 210 160 250 206 0 253 222 69 253 226 47 254 116 14 254 128 21 254 136 5 254 141 47 254 144 8 254 147 36 254 147 47 254 158 0 254 158 1 254 159 21 254 161 10 254 162 0 254 165 54 254 165 69 254 167 2 254 167 5 254 171 10 254 176 36 254 177 17 254 178 11 254 181 24 254 184 75 254 184 94 254 187 34 254 191 0 254 191 42 254 191 54 254 194 26 254 197 55 254 201 65 254 203 3 254 203 78 254 203 97 254 207 47 254 209 81 254 212 90 254 213 16 254 214 81 254 216 73 254 219 0 254 220 37 254 223 0 254 225 166 254 226 7 254 226 119 254 231 26 254 231 65 254 231 201 254 239 98]
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   769
            mask:((Depth1Image width:15 height:16) bits:(ByteArray fromPackedString:'A>@O0@?@G8@_ C<@O0A?@G8@_ A<@G @\@A @D@@@@@b'); yourself); yourself]
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   770
!
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   771
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   772
emptyIcon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   773
    "This resource specification was automatically generated
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   774
     by the ImageEditor of ST/X."
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   775
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   776
    "Do not manually edit this!! If it is corrupted,
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   777
     the ImageEditor may not be able to read the specification."
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   778
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   779
    "
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   780
     self emptyIcon inspect
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   781
     ImageEditor openOnClass:self andSelector:#emptyIcon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   782
     Icon flushCachedIcons
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   783
    "
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   784
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   785
    <resource: #image>
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   786
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   787
    ^Icon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   788
        constantNamed:'ImageEditor class emptyIcon'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   789
        ifAbsentPut:[(Depth4Image width:14 height:14) bits:(ByteArray fromPackedString:'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   790
@@@@@@@@@@@b')
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   791
            colorMapFromArray:#[0 0 0]
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   792
            mask:((ImageMask width:14 height:14) bits:(ByteArray fromPackedString:'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a'); yourself); yourself]
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   793
!
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   794
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   795
emptyIcon2
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   796
    "This resource specification was automatically generated
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   797
     by the ImageEditor of ST/X."
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   798
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   799
    "Do not manually edit this!! If it is corrupted,
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   800
     the ImageEditor may not be able to read the specification."
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   801
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   802
    "
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   803
     self emptyIcon2 inspect
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   804
     ImageEditor openOnClass:self andSelector:#emptyIcon2
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   805
     Icon flushCachedIcons
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   806
    "
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   807
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   808
    <resource: #image>
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   809
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   810
    ^Icon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   811
        constantNamed:'ImageEditor class emptyIcon2'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   812
        ifAbsentPut:[(Depth4Image width:28 height:14) bits:(ByteArray fromPackedString:'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   813
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   814
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   815
@@@@@@@@@@@@@@@@@@@@@@@a')
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   816
            colorMapFromArray:#[0 0 0]
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   817
            mask:((Depth1Image width:28 height:14) bits:(ByteArray fromPackedString:'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b'); yourself); yourself]
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   818
!
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   819
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   820
fillCircleIcon
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   821
    "This resource specification was automatically generated
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   822
     by the ImageEditor of ST/X."
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   823
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   824
    "Do not manually edit this!! If it is corrupted,
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   825
     the ImageEditor may not be able to read the specification."
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   826
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   827
    "
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   828
     self fillCircleIcon inspect
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   829
     ImageEditor openOnClass:self andSelector:#fillCircleIcon
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   830
     Icon flushCachedIcons
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   831
    "
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   832
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   833
    <resource: #image>
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   834
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   835
    ^Icon
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   836
        constantNamed:'ImageEditor class fillCircleIcon'
3443
b9d9eb4b34f9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3442
diff changeset
   837
        ifAbsentPut:[(Depth1Image width:14 height:14) bits:(ByteArray fromPackedString:'@@@@@@QA@@@@@B@H@@@@@@@CH@ @@@@@AD@@@@@a')
b9d9eb4b34f9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3442
diff changeset
   838
            colorMapFromArray:#[0 0 0 127 127 127]
b9d9eb4b34f9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3442
diff changeset
   839
            mask:((ImageMask width:14 height:14) bits:(ByteArray fromPackedString:'@@@@@@_@C>@_<C?8O? ?>C?8O? _<@? A<@@@@@a'); yourself); yourself]
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   840
!
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   841
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   842
fillDiagonalGradientRectIcon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   843
    "This resource specification was automatically generated
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   844
     by the ImageEditor of ST/X."
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   845
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   846
    "Do not manually edit this!! If it is corrupted,
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   847
     the ImageEditor may not be able to read the specification."
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   848
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   849
    "
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   850
     self fillDiagonalGradientRectIcon inspect
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   851
     ImageEditor openOnClass:self andSelector:#fillDiagonalGradientRectIcon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   852
     Icon flushCachedIcons
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   853
    "
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   854
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   855
    <resource: #image>
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   856
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   857
    ^Icon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   858
        constantNamed:'ImageEditor class fillDiagonalGradientRectIcon'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   859
        ifAbsentPut:[(Depth4Image width:14 height:14) bits:(ByteArray fromPackedString:'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@QDQDQD@@@DQDQDQ@@@ADH"H"H@@@QBH"H"@@@DP"L3L0@@ADH#L3L@@@QBH3DQ@@@DP"L1DP@@ADH#LQD@@@@@@@@@
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   860
@@@@@@@@@@@b')
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   861
            colorMapFromArray:#[0 0 0 255 0 0 127 0 0 191 0 0 91 0 0]
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   862
            mask:((ImageMask width:14 height:14) bits:(ByteArray fromPackedString:'@@@@@C?0O?@?<C?0O?@?<C?0O?@?<C?0@@@@@@@a'); yourself); yourself]
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   863
!
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   864
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   865
fillGradientRectIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   866
    <resource: #image>
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   867
    "This resource specification was automatically generated
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   868
     by the ImageEditor of ST/X."
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   869
    "Do not manually edit this!! If it is corrupted,
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   870
     the ImageEditor may not be able to read the specification."
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   871
    "
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   872
     self fillGradientRectIcon inspect
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   873
     ImageEditor openOnClass:self andSelector:#fillGradientRectIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   874
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   875
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   876
    ^ Icon constantNamed:'ImageEditor class fillGradientRectIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   877
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   878
            (Depth4Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   879
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   880
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   881
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   882
                bitsPerSample:(#[ 4 ]);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   883
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   884
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   885
                            fromPackedString:'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ADQDQDQ@@@QDQDQDP@@BH"H"H"@@@"H"H"H @@L3L3L3L@@CL3L3L3@@@QDQDQDP@@DQDQDQD@@@@@@@@@
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   886
@@@@@@@@@@@b');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   887
                colorMapFromArray:#[ 0 0 0 255 0 0 127 0 0 191 0 0 63 0 0 ];
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   888
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   889
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   890
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   891
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   892
                                        fromPackedString:'@@@@@C?0O?@?<C?0O?@?<C?0O?@?<C?0@@@@@@@a');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   893
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   894
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   895
        ]
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   896
!
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   897
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   898
fillHorizontalGradientRectIcon
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   899
    "This resource specification was automatically generated
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   900
     by the ImageEditor of ST/X."
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   901
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   902
    "Do not manually edit this!! If it is corrupted,
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   903
     the ImageEditor may not be able to read the specification."
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   904
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   905
    "
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   906
     self fillHorizontalGradientRectIcon inspect
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   907
     ImageEditor openOnClass:self andSelector:#fillHorizontalGradientRectIcon
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   908
     Icon flushCachedIcons
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   909
    "
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   910
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   911
    <resource: #image>
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   912
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   913
    ^Icon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   914
        constantNamed:'ImageEditor class fillHorizontalGradientRectIcon'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   915
        ifAbsentPut:[(Depth4Image width:14 height:14) bits:(ByteArray fromPackedString:'@@@@@@@@@@@@@@@@@@@@ADH#LQD@@@QBH3DQ@@@DP"L1DP@@ADH#LQD@@@QBH3DQ@@@DP"L1DP@@ADH#LQD@@@QBH3DQ@@@DP"L1DP@@ADH#LQD@@@@@@@@@
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   916
@@@@@@@@@@@b')
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   917
            colorMapFromArray:#[0 0 0 255 0 0 127 0 0 191 0 0 91 0 0]
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   918
            mask:((ImageMask width:14 height:14) bits:(ByteArray fromPackedString:'@@@@@C?0O?@?<C?0O?@?<C?0O?@?<C?0@@@@@@@a'); yourself); yourself]
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   919
!
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   920
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   921
fillIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   922
    <resource: #image>
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   923
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   924
     by the ImageEditor of ST/X."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   925
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   926
     the ImageEditor may not be able to read the specification."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   927
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   928
     self fillIcon inspect
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   929
     ImageEditor openOnClass:self andSelector:#fillIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   930
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   931
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   932
    ^ Icon constantNamed:'ImageEditor class fillIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   933
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   934
            (Depth2Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   935
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   936
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   937
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   938
                bitsPerSample:(#( 2 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   939
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   940
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   941
                            fromPackedString:'@@@@@@@@@@@@@ @@@@*H@@D*(@@DUUP@EAUU@AAEU@@@@U@@DDA@@@@@@@@PP@@@@@@@@@@@@@@b');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   942
                colorMapFromArray:#[ 0 0 0 255 0 0 255 255 255 ];
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   943
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   944
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   945
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   946
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   947
                                        fromPackedString:'C @Q@BN@I<@?8C?0[?!!G<@O P\@@ D@@@@@@@@@a');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   948
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   949
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   950
        ]
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   951
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   952
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   953
fillRectIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   954
    <resource: #image>
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   955
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   956
     by the ImageEditor of ST/X."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   957
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   958
     the ImageEditor may not be able to read the specification."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   959
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   960
     self fillRectIcon inspect
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   961
     ImageEditor openOnClass:self andSelector:#fillRectIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   962
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   963
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   964
    ^ Icon constantNamed:'ImageEditor class fillRectIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   965
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   966
            (Depth1Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   967
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   968
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   969
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   970
                bitsPerSample:(#( 1 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   971
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   972
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   973
                            fromPackedString:'@@@@@@@A@@@@@@@@@@@@@@@@@@@@@@@@@@D@@@@a');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   974
                colorMapFromArray:#[ 0 0 0 255 0 0 ];
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   975
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   976
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   977
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   978
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   979
                                        fromPackedString:'@@@@@C?0O?@?<C?0O?@?<C?0O?@?<C?0@@@@@@@a');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   980
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   981
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   982
        ]
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   983
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   984
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   985
fillVerticalGradientRectIcon
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   986
    "This resource specification was automatically generated
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   987
     by the ImageEditor of ST/X."
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   988
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   989
    "Do not manually edit this!! If it is corrupted,
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   990
     the ImageEditor may not be able to read the specification."
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   991
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   992
    "
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   993
     self fillVerticalGradientRectIcon inspect
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   994
     ImageEditor openOnClass:self andSelector:#fillVerticalGradientRectIcon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   995
     Icon flushCachedIcons
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   996
    "
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   997
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   998
    <resource: #image>
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   999
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  1000
    ^Icon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  1001
        constantNamed:'ImageEditor class fillVerticalGradientRectIcon'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  1002
        ifAbsentPut:[(Depth4Image width:14 height:14) bits:(ByteArray fromPackedString:'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@DQDQDQD@@ADQDQDQ@@@H"H"H"H@@BH"H"H"@@@3L3L3L0@@L3L3L3L@@ADQDQDQ@@@QDQDQDP@@DQDQDQD@@@@@@@@@
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  1003
@@@@@@@@@@@b')
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  1004
            colorMapFromArray:#[0 0 0 255 0 0 127 0 0 191 0 0 91 0 0]
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  1005
            mask:((ImageMask width:14 height:14) bits:(ByteArray fromPackedString:'@@@@@C?0O?@?<C?0O?@?<C?0O?@?<C?0@@@@@@@a'); yourself); yourself]
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
  1006
!
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
  1007
2837
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1008
flipHorizontalIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1009
    <resource: #image>
2837
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1010
    "This resource specification was automatically generated
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1011
     by the ImageEditor of ST/X."
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1012
    "Do not manually edit this!! If it is corrupted,
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1013
     the ImageEditor may not be able to read the specification."
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1014
    "
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1015
     self flipHorizontalIcon inspect
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1016
     ImageEditor openOnClass:self andSelector:#flipHorizontalIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1017
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1018
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1019
    ^ Icon constantNamed:'ImageEditor class flipHorizontalIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1020
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1021
            (Depth1Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1022
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1023
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1024
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1025
                bitsPerSample:(#( 1 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1026
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1027
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1028
                            fromPackedString:'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1029
                colorMapFromArray:#[ 0 0 0 ];
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1030
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1031
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1032
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1033
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1034
                                        fromPackedString:'@@@A@C?8HP )JC$8_?1??C$8JR !!BC?8@P@@@@@a');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1035
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1036
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1037
        ]
2837
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1038
!
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1039
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1040
flipVerticalIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1041
    <resource: #image>
2837
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1042
    "This resource specification was automatically generated
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1043
     by the ImageEditor of ST/X."
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1044
    "Do not manually edit this!! If it is corrupted,
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1045
     the ImageEditor may not be able to read the specification."
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1046
    "
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1047
     self flipVerticalIcon inspect
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1048
     ImageEditor openOnClass:self andSelector:#flipVerticalIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1049
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1050
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1051
    ^ Icon constantNamed:'ImageEditor class flipVerticalIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1052
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1053
            (Depth1Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1054
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1055
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1056
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1057
                bitsPerSample:(#( 1 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1058
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1059
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1060
                            fromPackedString:'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1061
                colorMapFromArray:#[ 0 0 0 ];
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1062
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1063
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1064
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1065
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1066
                                        fromPackedString:'@@@C@C?0I9@/4BLPH1A?>BLPH1@/4B^PO?@C@@@a');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1067
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1068
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1069
        ]
2837
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1070
!
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1071
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1072
leftMouseKeyIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1073
    <resource: #image>
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1074
    "This resource specification was automatically generated
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1075
     by the ImageEditor of ST/X."
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1076
    "Do not manually edit this!! If it is corrupted,
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1077
     the ImageEditor may not be able to read the specification."
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1078
    "
1405
0b2e421db465 images compactified
Claus Gittinger <cg@exept.de>
parents: 1403
diff changeset
  1079
     self leftMouseKeyIcon inspect
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1080
     ImageEditor openOnClass:self andSelector:#leftMouseKeyIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1081
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1082
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1083
    ^ Icon constantNamed:'ImageEditor class leftMouseKeyIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1084
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1085
            (Depth2Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1086
                width:16;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1087
                height:16;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1088
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1089
                bitsPerSample:(#( 2 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1090
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1091
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1092
                            fromPackedString:'@@@@@@@@@@@@@@@@@EJJ@@AR" @@T((@@@@@@@B** @@**(@@J**@@B** @@**(@@J**@@@**@@@@@@@@@@@@@@a');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1093
                colorMapFromArray:#[ 0 0 0 255 0 0 255 255 255 ];
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1094
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1095
                            width:16;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1096
                            height:16;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1097
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1098
                                        fromPackedString:'@@@@@@?0G? _>A?8G? _>A?8G? _>A?8G? O<@_ @@@b');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1099
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1100
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1101
        ]
1433
df38b2a5d335 checkin from browser
martin
parents: 1424
diff changeset
  1102
!
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1103
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1104
maskOutsideCircleIcon
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1105
    "This resource specification was automatically generated
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1106
     by the ImageEditor of ST/X."
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1107
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1108
    "Do not manually edit this!! If it is corrupted,
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1109
     the ImageEditor may not be able to read the specification."
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1110
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1111
    "
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1112
     self maskOutsideCircleIcon inspect
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1113
     ImageEditor openOnClass:self andSelector:#maskOutsideCircleIcon
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1114
     Icon flushCachedIcons
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1115
    "
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1116
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1117
    <resource: #image>
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1118
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1119
    ^Icon
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1120
        constantNamed:'ImageEditor class maskOutsideCircleIcon'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1121
        ifAbsentPut:[(Depth1Image width:14 height:14) bits:(ByteArray fromPackedString:'??3??O1=<A3 CN@L0@S@AL@G8@3 CO@\?G3??@@a')
3407
2e0024e012e9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3405
diff changeset
  1122
            colorMapFromArray:#[0 0 0 255 127 127]
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1123
            mask:((ImageMask width:14 height:14) bits:(ByteArray fromPackedString:'??3??O?<??3??O?<??3??O?<??3??O?<??3??@@a'); yourself); yourself]
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1124
!
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1125
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1126
maskOutsideRectangleIcon
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1127
    "This resource specification was automatically generated
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1128
     by the ImageEditor of ST/X."
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1129
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1130
    "Do not manually edit this!! If it is corrupted,
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1131
     the ImageEditor may not be able to read the specification."
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1132
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1133
    "
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1134
     self maskOutsideRectangleIcon inspect
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1135
     ImageEditor openOnClass:self andSelector:#maskOutsideRectangleIcon
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1136
     Icon flushCachedIcons
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1137
    "
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1138
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1139
    <resource: #image>
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1140
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1141
    ^Icon
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1142
        constantNamed:'ImageEditor class maskOutsideRectangleIcon'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1143
        ifAbsentPut:[(Depth1Image width:14 height:14) bits:(ByteArray fromPackedString:'??3??L@M0@3@CL@L0@3@CL@L0@3@CL@L??7??@@a')
3407
2e0024e012e9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3405
diff changeset
  1144
            colorMapFromArray:#[0 0 0 255 127 127]
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1145
            mask:((ImageMask width:14 height:14) bits:(ByteArray fromPackedString:'??3??O?<??3??O?<??3??O?<??3??O?<??3??@@a'); yourself); yourself]
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1146
!
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1147
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1148
pasteIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1149
    <resource: #image>
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1150
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1151
     by the ImageEditor of ST/X."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1152
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1153
     the ImageEditor may not be able to read the specification."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1154
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1155
     self pasteIcon inspect
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1156
     ImageEditor openOnClass:self andSelector:#pasteIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1157
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1158
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1159
    ^ Icon constantNamed:'ImageEditor class pasteIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1160
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1161
            (Depth4Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1162
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1163
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1164
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1165
                bitsPerSample:(#( 4 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1166
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1167
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1168
                            fromPackedString:'@@@@@@@@@@@@AU@@@@@CHE@E@2@@@ QDQD@0@@L@@@@@H@@BL#H2L#@@@QDQDQL @@D3L@@@@@@AL3A&Y&X@@SL0Y A&@@D3LF@@A @AL3A&@FX@@QDPY&Y&
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1169
@@@@@@@@@@@b');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1170
                colorMapFromArray:#[ 0 0 0 0 0 128 128 128 0 128 128 128 212 208 200 255 255 0 255 255 255 ];
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1171
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1172
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1173
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1174
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1175
                                        fromPackedString:'C0A?8O?0??C?<O?0??C?>O?8??#?>O?8_? G>@@a');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1176
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1177
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1178
        ]
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1179
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1180
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1181
pasteUnderIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1182
    <resource: #image>
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1183
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1184
     by the ImageEditor of ST/X."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1185
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1186
     the ImageEditor may not be able to read the specification."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1187
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1188
     self pasteUnderIcon inspect
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1189
     ImageEditor openOnClass:self andSelector:#pasteUnderIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1190
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1191
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1192
    ^ Icon constantNamed:'ImageEditor class pasteUnderIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1193
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1194
            (Depth4Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1195
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1196
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1197
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1198
                bitsPerSample:(#( 4 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1199
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1200
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1201
                            fromPackedString:'@@@@@@@@@@@@AU@@@@@CHE@E@2@@@ QDQD@0@@L@@@@@H@@BL#H2L#@@@QDQDQL @@D3L3LP@@@AL3L3E&X@@SL3L0A&@@D3L3@@A @AL3L3@FX@@QDQDQY&
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1202
@@@@@@@@@@@b');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1203
                colorMapFromArray:#[ 0 0 0 0 0 128 128 128 0 128 128 128 212 208 200 255 255 0 255 255 255 ];
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1204
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1205
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1206
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1207
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1208
                                        fromPackedString:'C0A?8O?0??C?<O?0??C?>O?8??#?>O?8_? G>@@a');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1209
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1210
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1211
        ]
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1212
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1213
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1214
pasteWithMaskIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1215
    <resource: #image>
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1216
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1217
     by the ImageEditor of ST/X."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1218
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1219
     the ImageEditor may not be able to read the specification."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1220
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1221
     self pasteWithMaskIcon inspect
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1222
     ImageEditor openOnClass:self andSelector:#pasteWithMaskIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1223
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1224
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1225
    ^ Icon constantNamed:'ImageEditor class pasteWithMaskIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1226
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1227
            (Depth4Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1228
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1229
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1230
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1231
                bitsPerSample:(#( 4 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1232
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1233
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1234
                            fromPackedString:'@@@@@@@@@@@@AU@@@@@CHE@E@2@@@ QDQD@0@@L@@@@@H@@BL#H2L#@@@QDQDQL @@D3L@@@@@@AL3@3M&X@@SL0L3A&@@D3LCL0A @AL3@3LFX@@QDPY&Y&
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1235
@@@@@@@@@@@b');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1236
                colorMapFromArray:#[ 0 0 0 0 0 128 128 128 0 128 128 128 212 208 200 255 255 0 255 255 255 ];
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1237
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1238
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1239
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1240
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1241
                                        fromPackedString:'C0A?8O?0??C?<O?0??C?>O?8??#?>O?8_? G>@@a');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1242
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1243
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1244
        ]
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1245
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1246
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1247
pointIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1248
    <resource: #image>
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1249
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1250
     by the ImageEditor of ST/X."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1251
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1252
     the ImageEditor may not be able to read the specification."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1253
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1254
     self pointIcon inspect
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1255
     ImageEditor openOnClass:self andSelector:#pointIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1256
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1257
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1258
    ^ Icon constantNamed:'ImageEditor class pointIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1259
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1260
            (Depth1Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1261
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1262
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1263
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1264
                bitsPerSample:(#( 1 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1265
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1266
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1267
                            fromPackedString:'@@@@@@@A@@@@@@@@@@@@@@@C@@@@@@@@@@@@@@@a');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1268
                colorMapFromArray:#[ 0 0 0 255 255 255 ];
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1269
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1270
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1271
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1272
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1273
                                        fromPackedString:'@@@@@@@0@G@@8@G@@8@G@@8@G@@X@@@@@@@@@@@a');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1274
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1275
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1276
        ]
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1277
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1278
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1279
rectIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1280
    <resource: #image>
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1281
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1282
     by the ImageEditor of ST/X."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1283
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1284
     the ImageEditor may not be able to read the specification."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1285
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1286
     self rectIcon inspect
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1287
     ImageEditor openOnClass:self andSelector:#rectIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1288
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1289
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1290
    ^ Icon constantNamed:'ImageEditor class rectIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1291
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1292
            (Depth1Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1293
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1294
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1295
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1296
                bitsPerSample:(#( 1 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1297
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1298
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1299
                            fromPackedString:'@@@@@@@A@@@@@@@@@@@@@@@C@@@@@@@@@@@@@@@a');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1300
                colorMapFromArray:#[ 0 0 0 255 0 0 ];
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1301
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1302
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1303
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1304
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1305
                                        fromPackedString:'@@@@@C?0HA@ DB@PHA@ DB@PHA@ DC?0@@@@@@@a');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1306
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1307
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1308
        ]
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1309
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1310
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1311
rightMouseKeyIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1312
    <resource: #image>
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1313
    "This resource specification was automatically generated
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1314
     by the ImageEditor of ST/X."
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1315
    "Do not manually edit this!! If it is corrupted,
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1316
     the ImageEditor may not be able to read the specification."
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1317
    "
1405
0b2e421db465 images compactified
Claus Gittinger <cg@exept.de>
parents: 1403
diff changeset
  1318
     self rightMouseKeyIcon inspect
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1319
     ImageEditor openOnClass:self andSelector:#rightMouseKeyIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1320
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1321
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1322
    ^ Icon constantNamed:'ImageEditor class rightMouseKeyIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1323
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1324
            (Depth2Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1325
                width:16;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1326
                height:16;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1327
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1328
                bitsPerSample:(#( 2 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1329
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1330
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1331
                            fromPackedString:'@@@@@@@@@@@@@@@@@JJE@@B"!!P@@((T@@@@@@@B** @@**(@@J**@@B** @@**(@@J**@@@**@@@@@@@@@@@@@@a');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1332
                colorMapFromArray:#[ 0 0 0 255 0 0 255 255 255 ];
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1333
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1334
                            width:16;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1335
                            height:16;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1336
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1337
                                        fromPackedString:'@@@@@@?0G? _>A?8G? _>A?8G? _>A?8G? O<@_ @@@b');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1338
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1339
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1340
        ]
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1341
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1342
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1343
slightlyBrighterIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1344
    "This resource specification was automatically generated
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1345
     by the ImageEditor of ST/X."
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1346
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1347
    "Do not manually edit this!! If it is corrupted,
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1348
     the ImageEditor may not be able to read the specification."
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1349
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1350
    "
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1351
     self slightlyBrighterIcon inspect
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1352
     ImageEditor openOnClass:self andSelector:#slightlyBrighterIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1353
     Icon flushCachedIcons
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1354
    "
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1355
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1356
    <resource: #image>
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1357
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1358
    ^Icon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1359
        constantNamed:'ImageEditor class slightlyBrighterIcon'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1360
        ifAbsentPut:[(Depth8Image width:14 height:14) bits:(ByteArray fromPackedString:'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1361
@PDA@PDA@PDA@PDA@PD@@@@@@@@@;>?/;>?/;0@@@@@@@@C/;>?/;>?/@@@@@@@@A [/;>?/;><@@@@@@@@FA.?/;>?/;0@@@@@@@@XF;>?/;>?/@@@@A XF
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1362
A XFA [/;><@@@@FA XFA XFA.?/;0@@@@@@@@XF;>?/;>?/@@@@@@@@A [/;>?/;><@@@@@@@@FA.?/;>?/;0@@@@@@@@C/;>?/;>?/@@@@@@@@@N?/;>?/
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1363
;><A@PDA@PDA@PDA@PDA@P@a')
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1364
            colorMapFromArray:#[88 88 88 0 0 0 255 0 0 0 255 0 0 0 255 0 255 255 255 255 127 255 0 255 127 0 0 0 127 0 0 0 127 0 127 127 127 127 0 127 0 127 127 127 127 170 170 170 0 0 51 0 0 102 0 0 153 0 0 204 0 51 0 0 51 51 0 51 102 0 51 153 0 51 204 0 51 255 0 102 0 0 102 51 0 102 102 0 102 153 0 102 204 0 102 255 0 153 0 0 153 51 0 153 102 0 153 153 0 153 204 0 153 255 0 204 0 0 204 51 0 204 102 0 204 153 0 204 204 0 204 255 0 255 51 0 255 102 0 255 153 0 255 204 51 0 0 51 0 51 51 0 102 51 0 153 51 0 204 51 0 255 51 51 0 51 51 51 51 51 102 51 51 153 51 51 204 51 51 255 51 102 0 51 102 51 51 102 102 51 102 153 51 102 204 51 102 255 51 153 0 51 153 51 51 153 102 51 153 153 51 153 204 51 153 255 51 204 0 51 204 51 51 204 102 51 204 153 51 204 204 51 204 255 51 255 0 51 255 51 51 255 102 51 255 153 51 255 204 51 255 255 102 0 0 102 0 51 102 0 102 102 0 153 102 0 204 102 0 255 102 51 0 102 51 51 102 51 102 102 51 153 102 51 204 102 51 255 102 102 0 102 102 51 102 102 102 102 102 153 102 102 204 102 102 255 102 153 0 102 153 51 102 153 102 102 153 153 102 153 204 102 153 255 102 204 0 102 204 51 102 204 102 102 204 153 102 204 204 102 204 255 102 255 0 102 255 51 102 255 102 102 255 153 102 255 204 102 255 255 153 0 0 153 0 51 153 0 102 153 0 153 153 0 204 153 0 255 153 51 0 153 51 51 153 51 102 153 51 153 153 51 204 153 51 255 153 102 0 153 102 51 153 102 102 153 102 153 153 102 204 153 102 255 153 153 0 153 153 51 153 153 102 153 153 153 153 153 204 153 153 255 153 204 0 153 204 51 153 204 102 153 204 153 153 204 204 153 204 255 153 255 0 153 255 51 153 255 102 153 255 153 153 255 204 153 255 255 204 0 0 204 0 51 204 0 102 204 0 153 204 0 204 204 0 255 204 51 0 204 51 51 204 51 102 204 51 153 204 51 204 204 51 255 204 102 0 204 102 51 204 102 102 204 102 153 204 102 204 204 102 255 204 153 0 204 153 51 204 153 102 204 153 153 204 153 204 204 153 255 204 204 0 204 204 51 204 204 102 204 204 153 204 204 204 204 204 255 204 255 0 204 255 51 204 255 102 204 255 153 204 255 204 204 255 255 255 0 51 255 0 102 255 0 153 255 0 204 255 51 0 255 51 51 255 51 102 255 51 153 255 51 204 255 51 255 255 102 0 255 102 51 255 102 102 255 102 153 255 102 204 255 102 255 255 153 0 255 153 51 255 153 102 255 153 153 255 153 204 255 153 255 255 204 0 255 204 51 255 204 102 255 204 153 255 204 204 255 204 255 255 255 51 255 255 102 255 255 153 255 255 204 255 255 255 9 9 9 19 19 19 29 29 29 39 39 39 49 49 49 58 58 58 68 68 68 78 78 78 98 98 98 107 107 107 117 117 117 137 137 137 147 147 147 156 156 156 166 166 166]
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1365
            mask:((ImageMask width:14 height:14) bits:(ByteArray fromPackedString:'@@C??O?<??3??O?<??3??O?<??3??O?<??0@@@@a'); yourself); yourself]
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1366
!
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1367
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1368
slightlyDarkerIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1369
    "This resource specification was automatically generated
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1370
     by the ImageEditor of ST/X."
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1371
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1372
    "Do not manually edit this!! If it is corrupted,
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1373
     the ImageEditor may not be able to read the specification."
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1374
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1375
    "
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1376
     self slightlyDarkerIcon inspect
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1377
     ImageEditor openOnClass:self andSelector:#slightlyDarkerIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1378
     Icon flushCachedIcons
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1379
    "
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1380
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1381
    <resource: #image>
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1382
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1383
    ^Icon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1384
        constantNamed:'ImageEditor class slightlyDarkerIcon'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1385
        ifAbsentPut:[(Depth8Image width:14 height:14) bits:(ByteArray fromPackedString:'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1386
@PDA@PDA@PDA@PDA@PG/;>?/;>?/@@@@@@@@@N?/;>?/;><@@@@@@@@@;>?/;>?/;0@@@@@@@@C/;>?/;>?/@@@@@@@@@N?/;>?/;><@@@@@@@@@;>?/A XF
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1387
A XFA X@@@C/;><FA XFA XFA @@@N?/;>?/;><@@@@@@@@@;>?/;>?/;0@@@@@@@@C/;>?/;>?/@@@@@@@@@N?/;>?/;><@@@@@@@@@;>?/;>?/;0@@@@@@
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1388
@@@A@PDA@PDA@PDA@PDA@P@a')
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1389
            colorMapFromArray:#[88 88 88 0 0 0 255 0 0 0 255 0 0 0 255 0 255 255 255 255 127 255 0 255 127 0 0 0 127 0 0 0 127 0 127 127 127 127 0 127 0 127 127 127 127 170 170 170 0 0 51 0 0 102 0 0 153 0 0 204 0 51 0 0 51 51 0 51 102 0 51 153 0 51 204 0 51 255 0 102 0 0 102 51 0 102 102 0 102 153 0 102 204 0 102 255 0 153 0 0 153 51 0 153 102 0 153 153 0 153 204 0 153 255 0 204 0 0 204 51 0 204 102 0 204 153 0 204 204 0 204 255 0 255 51 0 255 102 0 255 153 0 255 204 51 0 0 51 0 51 51 0 102 51 0 153 51 0 204 51 0 255 51 51 0 51 51 51 51 51 102 51 51 153 51 51 204 51 51 255 51 102 0 51 102 51 51 102 102 51 102 153 51 102 204 51 102 255 51 153 0 51 153 51 51 153 102 51 153 153 51 153 204 51 153 255 51 204 0 51 204 51 51 204 102 51 204 153 51 204 204 51 204 255 51 255 0 51 255 51 51 255 102 51 255 153 51 255 204 51 255 255 102 0 0 102 0 51 102 0 102 102 0 153 102 0 204 102 0 255 102 51 0 102 51 51 102 51 102 102 51 153 102 51 204 102 51 255 102 102 0 102 102 51 102 102 102 102 102 153 102 102 204 102 102 255 102 153 0 102 153 51 102 153 102 102 153 153 102 153 204 102 153 255 102 204 0 102 204 51 102 204 102 102 204 153 102 204 204 102 204 255 102 255 0 102 255 51 102 255 102 102 255 153 102 255 204 102 255 255 153 0 0 153 0 51 153 0 102 153 0 153 153 0 204 153 0 255 153 51 0 153 51 51 153 51 102 153 51 153 153 51 204 153 51 255 153 102 0 153 102 51 153 102 102 153 102 153 153 102 204 153 102 255 153 153 0 153 153 51 153 153 102 153 153 153 153 153 204 153 153 255 153 204 0 153 204 51 153 204 102 153 204 153 153 204 204 153 204 255 153 255 0 153 255 51 153 255 102 153 255 153 153 255 204 153 255 255 204 0 0 204 0 51 204 0 102 204 0 153 204 0 204 204 0 255 204 51 0 204 51 51 204 51 102 204 51 153 204 51 204 204 51 255 204 102 0 204 102 51 204 102 102 204 102 153 204 102 204 204 102 255 204 153 0 204 153 51 204 153 102 204 153 153 204 153 204 204 153 255 204 204 0 204 204 51 204 204 102 204 204 153 204 204 204 204 204 255 204 255 0 204 255 51 204 255 102 204 255 153 204 255 204 204 255 255 255 0 51 255 0 102 255 0 153 255 0 204 255 51 0 255 51 51 255 51 102 255 51 153 255 51 204 255 51 255 255 102 0 255 102 51 255 102 102 255 102 153 255 102 204 255 102 255 255 153 0 255 153 51 255 153 102 255 153 153 255 153 204 255 153 255 255 204 0 255 204 51 255 204 102 255 204 153 255 204 204 255 204 255 255 255 51 255 255 102 255 255 153 255 255 204 255 255 255 9 9 9 19 19 19 29 29 29 39 39 39 49 49 49 58 58 58 68 68 68 78 78 78 98 98 98 107 107 107 117 117 117 137 137 137 147 147 147 156 156 156 166 166 166]
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1390
            mask:((ImageMask width:14 height:14) bits:(ByteArray fromPackedString:'@@C??O?<??3??O?<??3??O?<??3??O?<??0@@@@a'); yourself); yourself]
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1391
!
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1392
3191
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1393
smoothIcon
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1394
    "This resource specification was automatically generated
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1395
     by the ImageEditor of ST/X."
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1396
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1397
    "Do not manually edit this!! If it is corrupted,
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1398
     the ImageEditor may not be able to read the specification."
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1399
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1400
    "
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1401
     self smoothIcon inspect
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1402
     ImageEditor openOnClass:self andSelector:#smoothIcon
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1403
     Icon flushCachedIcons
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1404
    "
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1405
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1406
    <resource: #image>
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1407
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1408
    ^Icon
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1409
        constantNamed:'ImageEditor smoothIcon'
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1410
        ifAbsentPut:[(Depth4Image new) width:14; height:14; bits:(ByteArray fromPackedString:'@@@@@@@@@@@RH@@@H!!@@HRD@@RD @BHQ@@DRH@@ADP@ADP@@@@@QD@@@@@@@DQ@@@@@@@ADP@@@@@QD@@QD@@BHQ@@DRH@@!!HP@AHR@@D"@@@BHP@@@@@@@@
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1411
@@@@@@@@@@@b') ; colorMapFromArray:#[127 126 127 255 0 0 255 255 255]; mask:((ImageMask new) width:14; height:14; bits:(ByteArray fromPackedString:'_?1<_G1<_G1??D_DQ<QG1G?<_G1<_G1<_?0@@@@a') ; yourself); yourself]
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1412
!
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1413
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  1414
specialCircleIcon
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  1415
    "This resource specification was automatically generated
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  1416
     by the ImageEditor of ST/X."
3442
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1417
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  1418
    "Do not manually edit this!! If it is corrupted,
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  1419
     the ImageEditor may not be able to read the specification."
3442
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1420
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  1421
    "
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  1422
     self specialCircleIcon inspect
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  1423
     ImageEditor openOnClass:self andSelector:#specialCircleIcon
3442
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1424
     Icon flushCachedIcons
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1425
    "
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1426
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1427
    <resource: #image>
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1428
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1429
    ^Icon
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1430
        constantNamed:'ImageEditor class specialCircleIcon'
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1431
        ifAbsentPut:[(Depth2Image width:14 height:14) bits:(ByteArray fromPackedString:'@@@@@@@@@@@@PA@@@RBD@@P@@P@P@@A@D@@@PA@@@D@PHHA@A@@A@@D@A@@@PA@@@@@@@@@@@@@b')
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1432
            colorMapFromArray:#[0 0 0 255 0 0 127 127 127]
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1433
            mask:((ImageMask width:14 height:14) bits:(ByteArray fromPackedString:'@@@@@@-@E:@''$D^HQ8!!G"D^HH1@PH@-@@0@@@@@a'); yourself); yourself]
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  1434
!
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  1435
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1436
specialRectangleIcon
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1437
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1438
     by the ImageEditor of ST/X."
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1439
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1440
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1441
     the ImageEditor may not be able to read the specification."
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1442
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1443
    "
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1444
     self specialRectangleIcon inspect
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1445
     ImageEditor openOnClass:self andSelector:#specialRectangleIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1446
     Icon flushCachedIcons
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1447
    "
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1448
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1449
    <resource: #image>
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1450
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1451
    ^Icon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1452
        constantNamed:'ImageEditor class specialRectangleIcon'
3442
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1453
        ifAbsentPut:[(Depth2Image width:14 height:14) bits:(ByteArray fromPackedString:'@@@@@@@@@@@UPAU@DBB@PA@@@D@P@@A@D@@@PA@@@D@PHHA@D@@@PA@@@D@UPAU@@@@@@@@@@@@b')
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1454
            colorMapFromArray:#[0 0 0 255 0 0 127 127 127]
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1455
            mask:((ImageMask width:14 height:14) bits:(ByteArray fromPackedString:'@@@@@G-8Q8!!G"D^HQ8!!G"D^HP0!!@BG-8@0@@@@@a'); yourself); yourself]
2375
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  1456
!
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  1457
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  1458
sprayIcon
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  1459
    "This resource specification was automatically generated
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  1460
     by the ImageEditor of ST/X."
3191
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1461
2375
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  1462
    "Do not manually edit this!! If it is corrupted,
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  1463
     the ImageEditor may not be able to read the specification."
3191
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1464
2375
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  1465
    "
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  1466
     self sprayIcon inspect
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  1467
     ImageEditor openOnClass:self andSelector:#sprayIcon
3191
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1468
     Icon flushCachedIcons
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1469
    "
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1470
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1471
    <resource: #image>
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1472
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1473
    ^Icon
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1474
        constantNamed:'ImageEditor sprayIcon'
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1475
        ifAbsentPut:[(Depth4Image new) width:14; height:14; bits:(ByteArray fromPackedString:'@@@@@@@@@@@@@@@@@@@@@@@@@@@P@@@@@@DA@P@@@@@PDA@@@@@@@PDA@@@@@@@PD@@@@"H@@PD@@@H"@@@@@@@ADP@@@@@@@QD@@@@@@@DQ@@@@@@@ADP@@
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1476
@@@@@@@@@@@b') ; colorMapFromArray:#[0 0 0 255 0 0 255 255 255]; mask:((ImageMask new) width:14; height:14; bits:(ByteArray fromPackedString:'@@@@@@@HA%PF*@ITA2 O%@>@C8@O @>@C8@O @@a') ; yourself); yourself]
1433
df38b2a5d335 checkin from browser
martin
parents: 1424
diff changeset
  1477
! !
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1478
400
228524287573 intitial checkin
tz
parents:
diff changeset
  1479
!ImageEditor class methodsFor:'interface specs'!
228524287573 intitial checkin
tz
parents:
diff changeset
  1480
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1481
changeHLSDialogSpec
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1482
    "This resource specification was automatically generated
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1483
     by the UIPainter of ST/X."
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1484
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1485
    "Do not manually edit this!! If it is corrupted,
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1486
     the UIPainter may not be able to read the specification."
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1487
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1488
    "
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1489
     UIPainter new openOnClass:ImageEditor andSelector:#changeHLSDialogSpec
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1490
     ImageEditor new openInterface:#changeHLSDialogSpec
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1491
    "
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1492
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1493
    <resource: #canvas>
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1494
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1495
    ^ 
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1496
    #(FullSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1497
       name: changeHLSDialogSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1498
       window: 
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1499
      (WindowSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1500
         label: 'HLS Edit Dialog'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1501
         name: 'HLS Edit Dialog'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1502
         min: (Point 10 10)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1503
         bounds: (Rectangle 0 0 378 312)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1504
       )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1505
       component: 
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1506
      (SpecCollection
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1507
         collection: (
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1508
          (LabelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1509
             label: 'Hue-Shift:'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1510
             name: 'HueLabel'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1511
             layout: (LayoutFrame 20 0 21 0 187 0 43 0)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1512
             translateLabel: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1513
             adjust: right
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1514
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1515
          (InputFieldSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1516
             name: 'HueShiftEntryField'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1517
             layout: (LayoutFrame 194 0 21 0 237 0 43 0)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1518
             tabable: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1519
             model: hueShiftAmount
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1520
             type: numberInRange
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1521
             minValue: 0
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1522
             maxValue: 360
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1523
             acceptChannel: acceptChannel
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1524
             acceptOnPointerLeave: false
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1525
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1526
          (ThumbWheelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1527
             name: 'HueWheel'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1528
             layout: (LayoutFrame 246 0 22 0 363 0 42 0)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1529
             model: hueShiftAmount
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1530
             orientation: horizontal
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1531
             step: 1
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1532
             endlessRotation: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1533
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1534
          (LabelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1535
             label: 'Light Factor:'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1536
             name: 'LightLabel'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1537
             layout: (LayoutFrame 20 0 50 0 187 0 72 0)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1538
             translateLabel: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1539
             adjust: right
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1540
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1541
          (InputFieldSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1542
             name: 'LightEntryField'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1543
             layout: (LayoutFrame 194 0 50 0 237 0 72 0)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1544
             tabable: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1545
             model: lightAmount
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1546
             type: numberInRange
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1547
             minValue: 0
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1548
             maxValue: 1000
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1549
             acceptChannel: acceptChannel
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1550
             acceptOnPointerLeave: false
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1551
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1552
          (ThumbWheelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1553
             name: 'LightWheel'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1554
             layout: (LayoutFrame 246 0 51 0 363 0 71 0)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1555
             model: lightAmount
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1556
             orientation: horizontal
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1557
             stop: 1000
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1558
             step: 1
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1559
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1560
          (LabelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1561
             label: 'Saturation Factor:'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1562
             name: 'SaturationLabel'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1563
             layout: (LayoutFrame 20 0 79 0 187 0 101 0)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1564
             translateLabel: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1565
             adjust: right
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1566
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1567
          (InputFieldSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1568
             name: 'SaturationEntryField'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1569
             layout: (LayoutFrame 194 0 79 0 237 0 101 0)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1570
             tabable: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1571
             model: saturationAmount
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1572
             type: numberInRange
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1573
             minValue: 0
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1574
             maxValue: 1000
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1575
             acceptChannel: acceptChannel
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1576
             acceptOnPointerLeave: false
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1577
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1578
          (ThumbWheelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1579
             name: 'SaturationWheel'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1580
             layout: (LayoutFrame 246 0 80 0 363 0 100 0)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1581
             model: saturationAmount
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1582
             orientation: horizontal
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1583
             stop: 1000
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1584
             step: 1
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1585
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1586
          (LabelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1587
             label: 'Color Shift'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1588
             name: 'Label2'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1589
             layout: (LayoutFrame 5 0 127 0 -15 0.5 149 0)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1590
             translateLabel: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1591
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1592
          (LabelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1593
             name: 'HueColorLabel'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1594
             layout: (LayoutFrame 18 0.0 150 0 -41 0.5 234 0)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1595
             level: -1
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1596
             backgroundChannel: hlsColor
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1597
             translateLabel: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1598
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1599
          (LabelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1600
             label: 'Preview'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1601
             name: 'Label3'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1602
             layout: (LayoutFrame 5 0.5 127 0 -5 1 149 0)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1603
             translateLabel: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1604
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1605
          (LabelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1606
             name: 'PreviewLabel'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1607
             layout: (LayoutFrame 36 0.5 150 0 -23 1.0 234 0)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1608
             level: -1
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1609
             translateLabel: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1610
             labelChannel: previewImageHolder
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1611
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1612
          (HorizontalPanelViewSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1613
             name: 'HorizontalPanel1'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1614
             layout: (LayoutFrame 0 0.0 -30 1 0 1.0 0 1)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1615
             horizontalLayout: fitSpace
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1616
             verticalLayout: center
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1617
             horizontalSpace: 3
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1618
             verticalSpace: 3
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1619
             reverseOrderIfOKAtLeft: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1620
             component: 
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1621
            (SpecCollection
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1622
               collection: (
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1623
                (ActionButtonSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1624
                   label: 'Cancel'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1625
                   name: 'Button1'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1626
                   translateLabel: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1627
                   tabable: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1628
                   model: cancel
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1629
                   extent: (Point 183 28)
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1630
                 )
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1631
                (ActionButtonSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1632
                   label: 'OK'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1633
                   name: 'Button2'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1634
                   translateLabel: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1635
                   tabable: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1636
                   model: accept
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1637
                   extent: (Point 183 28)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1638
                 )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1639
                )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1640
              
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1641
             )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1642
             keepSpaceForOSXResizeHandleH: true
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1643
           )
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1644
          )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1645
        
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1646
       )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1647
     )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1648
!
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1649
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1650
cropSpec
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1651
    "This resource specification was automatically generated
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1652
     by the UIPainter of ST/X."
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1653
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1654
    "Do not manually edit this!! If it is corrupted,
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1655
     the UIPainter may not be able to read the specification."
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1656
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1657
    "
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1658
     UIPainter new openOnClass:ImageEditor andSelector:#cropSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1659
     ImageEditor new openInterface:#cropSpec
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1660
    "
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1661
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1662
    <resource: #canvas>
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1663
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1664
    ^ 
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1665
    #(FullSpec
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1666
       name: cropSpec
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1667
       window: 
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1668
      (WindowSpec
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1669
         label: 'Crop Border(s)'
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1670
         name: 'Crop Border(s)'
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1671
         min: (Point 10 10)
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1672
         bounds: (Rectangle 0 0 364 312)
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1673
       )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1674
       component: 
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1675
      (SpecCollection
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1676
         collection: (
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1677
          (LabelSpec
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1678
             label: 'Left:'
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1679
             name: 'CropLeftLabel'
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1680
             layout: (LayoutFrame 14 0 24 0 90 0 46 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1681
             activeHelpKey: cropLeft
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1682
             translateLabel: true
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  1683
             adjust: left
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1684
           )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1685
          (InputFieldSpec
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1686
             name: 'CropLeftEntryField'
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  1687
             layout: (LayoutFrame 95 0 24 0 125 0 46 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1688
             activeHelpKey: cropLeft
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1689
             tabable: true
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1690
             model: cropLeftAmount
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1691
             type: number
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1692
             acceptChannel: acceptChannel
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1693
             acceptOnPointerLeave: false
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1694
           )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1695
          (ActionButtonSpec
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1696
             label: 'Crop Now'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1697
             name: 'CropLeftNowButton'
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1698
             layout: (LayoutFrame 133 0 21 0 229 0 50 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1699
             activeHelpKey: cropLeft
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1700
             translateLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1701
             resizeForLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1702
             tabable: true
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1703
             model: cropLeftNow
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1704
             autoRepeat: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1705
             usePreferredWidth: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1706
           )
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1707
          (ActionButtonSpec
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1708
             label: 'Auto'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1709
             name: 'Button6'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1710
             layout: (LayoutFrame 236 0 21 0 289 0 50 0)
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1711
             activeHelpKey: autoCropLeft
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1712
             translateLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1713
             resizeForLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1714
             tabable: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1715
             model: autoCropLeft
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1716
             autoRepeat: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1717
             usePreferredWidth: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1718
           )
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1719
          (LabelSpec
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1720
             label: 'Right:'
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1721
             name: 'CropRightLabel'
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1722
             layout: (LayoutFrame 14 0 55 0 90 0 77 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1723
             activeHelpKey: cropRight
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1724
             translateLabel: true
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  1725
             adjust: left
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1726
           )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1727
          (InputFieldSpec
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1728
             name: 'CropRightEntryField'
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  1729
             layout: (LayoutFrame 95 0 55 0 125 0 77 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1730
             activeHelpKey: cropRight
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1731
             tabable: true
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1732
             model: cropRightAmount
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1733
             type: number
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1734
             acceptChannel: acceptChannel
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1735
             acceptOnPointerLeave: false
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1736
           )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1737
          (ActionButtonSpec
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1738
             label: 'Crop Now'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1739
             name: 'CropRightButton'
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1740
             layout: (LayoutFrame 133 0 51 0 229 0 80 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1741
             activeHelpKey: cropRight
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1742
             translateLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1743
             resizeForLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1744
             tabable: true
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1745
             model: cropRightNow
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1746
             autoRepeat: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1747
             usePreferredWidth: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1748
           )
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1749
          (ActionButtonSpec
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1750
             label: 'Auto'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1751
             name: 'Button7'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1752
             layout: (LayoutFrame 236 0 51 0 289 0 80 0)
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1753
             activeHelpKey: autoCropRight
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1754
             translateLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1755
             resizeForLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1756
             tabable: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1757
             model: autoCropRight
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1758
             autoRepeat: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1759
             usePreferredWidth: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1760
           )
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1761
          (LabelSpec
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1762
             label: 'Top:'
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1763
             name: 'CropTopLabel'
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1764
             layout: (LayoutFrame 14 0 85 0 90 0 107 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1765
             activeHelpKey: cropTop
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1766
             translateLabel: true
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  1767
             adjust: left
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1768
           )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1769
          (InputFieldSpec
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1770
             name: 'CropTopEntryField'
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  1771
             layout: (LayoutFrame 95 0 85 0 125 0 107 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1772
             activeHelpKey: cropTop
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1773
             tabable: true
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1774
             model: cropTopAmount
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1775
             type: number
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1776
             acceptChannel: acceptChannel
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1777
             acceptOnPointerLeave: false
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1778
           )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1779
          (ActionButtonSpec
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1780
             label: 'Crop Now'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1781
             name: 'CropTopButton'
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1782
             layout: (LayoutFrame 133 0 81 0 229 0 110 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1783
             activeHelpKey: cropTop
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1784
             translateLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1785
             resizeForLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1786
             tabable: true
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1787
             model: cropTopNow
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1788
             autoRepeat: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1789
             usePreferredWidth: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1790
           )
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1791
          (ActionButtonSpec
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1792
             label: 'Auto'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1793
             name: 'Button8'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1794
             layout: (LayoutFrame 236 0 81 0 289 0 110 0)
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1795
             activeHelpKey: autoCropTop
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1796
             translateLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1797
             resizeForLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1798
             tabable: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1799
             model: autoCropTop
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1800
             autoRepeat: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1801
             usePreferredWidth: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1802
           )
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1803
          (LabelSpec
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1804
             label: 'Bottom:'
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1805
             name: 'CropBottomLabel'
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1806
             layout: (LayoutFrame 14 0 115 0 90 0 137 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1807
             activeHelpKey: cropBottom
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1808
             translateLabel: true
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  1809
             adjust: left
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1810
           )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1811
          (InputFieldSpec
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1812
             name: 'CropBottomEntryField'
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  1813
             layout: (LayoutFrame 95 0 115 0 125 0 137 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1814
             activeHelpKey: cropBottom
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1815
             tabable: true
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1816
             model: cropBottomAmount
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1817
             type: number
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1818
             acceptChannel: acceptChannel
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1819
             acceptOnPointerLeave: false
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1820
           )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1821
          (ActionButtonSpec
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1822
             label: 'Crop Now'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1823
             name: 'CropBottomButton'
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1824
             layout: (LayoutFrame 133 0 111 0 229 0 140 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1825
             activeHelpKey: cropBottom
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1826
             translateLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1827
             resizeForLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1828
             tabable: true
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1829
             model: cropBottomNow
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1830
             autoRepeat: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1831
             usePreferredWidth: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1832
           )
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1833
          (ActionButtonSpec
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1834
             label: 'Auto'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1835
             name: 'Button9'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1836
             layout: (LayoutFrame 236 0 111 0 289 0 140 0)
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1837
             activeHelpKey: autoCropBottom
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1838
             translateLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1839
             resizeForLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1840
             tabable: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1841
             model: autoCropBottom
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1842
             autoRepeat: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1843
             usePreferredWidth: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1844
           )
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1845
          (ActionButtonSpec
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1846
             label: 'All'
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1847
             name: 'Button4'
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1848
             layout: (LayoutFrame 133 0 148 0 229 0 176 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1849
             activeHelpKey: cropAll
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1850
             translateLabel: true
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1851
             resizeForLabel: true
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1852
             tabable: true
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1853
             model: applyCropAction
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1854
           )
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1855
          (HorizontalPanelViewSpec
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1856
             name: 'HorizontalPanel1'
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1857
             layout: (LayoutFrame 0 0.0 -30 1 0 1.0 0 1)
3400
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  1858
             visibilityChannel: cropBoxIsDialog
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1859
             horizontalLayout: fitSpace
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1860
             verticalLayout: center
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1861
             horizontalSpace: 3
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1862
             verticalSpace: 3
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1863
             reverseOrderIfOKAtLeft: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1864
             component: 
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1865
            (SpecCollection
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1866
               collection: (
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1867
                (ActionButtonSpec
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1868
                   label: 'Cancel'
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1869
                   name: 'Button1'
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1870
                   translateLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1871
                   resizeForLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1872
                   tabable: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1873
                   model: cancel
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1874
                   extent: (Point 116 28)
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1875
                 )
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1876
                (ActionButtonSpec
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1877
                   label: 'Apply'
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1878
                   name: 'Button3'
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1879
                   translateLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1880
                   resizeForLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1881
                   tabable: true
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1882
                   model: applyCropAction
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1883
                   extent: (Point 116 28)
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1884
                 )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1885
                (ActionButtonSpec
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1886
                   label: 'OK'
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1887
                   name: 'Button2'
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1888
                   translateLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1889
                   resizeForLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1890
                   tabable: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1891
                   model: accept
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1892
                   extent: (Point 116 28)
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1893
                 )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1894
                )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1895
              
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1896
             )
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1897
           )
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1898
          (ActionButtonSpec
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1899
             label: 'All'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1900
             name: 'Button10'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1901
             layout: (LayoutFrame 236 0 148 0 289 0 176 0)
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1902
             activeHelpKey: autoCropAll
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1903
             translateLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1904
             resizeForLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1905
             tabable: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1906
             model: autoCropAll
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1907
           )
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1908
          )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1909
        
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1910
       )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1911
     )
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1912
!
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1913
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  1914
dialogSpecForNewImage
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1915
    "This resource specification was automatically generated
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1916
     by the UIPainter of ST/X."
519
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  1917
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1918
    "Do not manually edit this!! If it is corrupted,
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1919
     the UIPainter may not be able to read the specification."
519
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  1920
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  1921
    "
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  1922
     UIPainter new openOnClass:ImageEditor andSelector:#dialogSpecForNewImage
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  1923
     ImageEditor new openInterface:#dialogSpecForNewImage
519
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  1924
    "
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  1925
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  1926
    <resource: #canvas>
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  1927
1457
8c15098c3469 ok button is left in some viewStyles
Claus Gittinger <cg@exept.de>
parents: 1449
diff changeset
  1928
    ^ 
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1929
    #(FullSpec
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1930
       name: dialogSpecForNewImage
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1931
       window: 
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1932
      (WindowSpec
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1933
         label: 'New Image'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1934
         name: 'New Image'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1935
         min: (Point 10 10)
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1936
         bounds: (Rectangle 0 0 301 119)
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1937
       )
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1938
       component: 
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1939
      (SpecCollection
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1940
         collection: (
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1941
          (ViewSpec
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1942
             name: 'View'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1943
             layout: (LayoutFrame 0 0.0 0 0.0 0 1.0 -35 1.0)
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1944
             level: 1
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1945
             component: 
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1946
            (SpecCollection
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1947
               collection: (
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1948
                (FramedBoxSpec
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1949
                   label: 'Size'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1950
                   name: 'framedBox1'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1951
                   layout: (LayoutFrame 1 0.0 7 0.0 0 0.40000000000000002 76 0)
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1952
                   style: (FontDescription helvetica medium roman 12)
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1953
                   labelPosition: topLeft
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1954
                   translateLabel: true
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1955
                   component: 
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1956
                  (SpecCollection
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1957
                     collection: (
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1958
                      (ComboBoxSpec
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1959
                         name: 'defaultSizesComboBox'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1960
                         layout: (LayoutFrame 0 0.0 10 0.0 0 1 35 0.0)
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1961
                         model: selectionOfSize
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1962
                         type: string
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1963
                         acceptOnPointerLeave: false
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1964
                         comboList: listOfDefaultSizes
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1965
                         isFilenameBox: false
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1966
                       )
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1967
                      )
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1968
                    
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1969
                   )
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1970
                 )
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1971
                (FramedBoxSpec
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1972
                   label: 'Color Map'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1973
                   name: 'framedBox2'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1974
                   layout: (LayoutFrame 0 0.40000000000000002 7 0.0 -1 1.0 76 0)
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1975
                   style: (FontDescription helvetica medium roman 12)
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1976
                   labelPosition: topLeft
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1977
                   translateLabel: true
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1978
                   component: 
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1979
                  (SpecCollection
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1980
                     collection: (
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1981
                      (ComboListSpec
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1982
                         name: 'colorMapComboBox'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1983
                         layout: (LayoutFrame 0 0.0 10 0.0 0 1 35 0.0)
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1984
                         model: selectionOfColorMap
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1985
                         comboList: listOfColorMaps
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1986
                         useIndex: false
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1987
                         hidePullDownMenuButton: false
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1988
                       )
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1989
                      )
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1990
                    
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1991
                   )
1457
8c15098c3469 ok button is left in some viewStyles
Claus Gittinger <cg@exept.de>
parents: 1449
diff changeset
  1992
                 )
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1993
                )
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1994
              
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1995
             )
1457
8c15098c3469 ok button is left in some viewStyles
Claus Gittinger <cg@exept.de>
parents: 1449
diff changeset
  1996
           )
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1997
          (UISubSpecification
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1998
             name: 'windowSpecForCommitWithoutChannels'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1999
             layout: (LayoutFrame 2 0.0 -37 1 -2 1.0 -2 1.0)
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2000
             minorKey: windowSpecForCommitWithoutChannels
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2001
             keepSpaceForOSXResizeHandleH: true
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2002
           )
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2003
          )
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2004
        
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2005
       )
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2006
     )
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
  2007
!
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
  2008
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2009
floodFillToleranceSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2010
    "This resource specification was automatically generated
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2011
     by the UIPainter of ST/X."
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2012
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2013
    "Do not manually edit this!! If it is corrupted,
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2014
     the UIPainter may not be able to read the specification."
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2015
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2016
    "
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2017
     UIPainter new openOnClass:ImageEditor andSelector:#floodFillToleranceSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2018
     ImageEditor new openInterface:#floodFillToleranceSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2019
    "
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2020
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2021
    <resource: #canvas>
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2022
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2023
    ^ 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2024
    #(FullSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2025
       name: floodFillToleranceSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2026
       window: 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2027
      (WindowSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2028
         label: 'Flood Fill Tolerance'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2029
         name: 'Flood Fill Tolerance'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2030
         min: (Point 10 10)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2031
         bounds: (Rectangle 0 0 364 312)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2032
       )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2033
       component: 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2034
      (SpecCollection
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2035
         collection: (
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2036
          (LabelSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2037
             label: 'Flood Fill Tolerance:'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2038
             name: 'Label1'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2039
             layout: (LayoutFrame 14 0 10 0 242 0 32 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2040
             activeHelpKey: floodFillMaxError
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2041
             visibilityChannel: cropBoxIsNotDialog
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2042
             translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2043
             adjust: left
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2044
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2045
          (LabelSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2046
             label: 'Hue:'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2047
             name: 'Label2'
3440
4e18ffc36717 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3436
diff changeset
  2048
             layout: (LayoutFrame 29 0 38 0 127 0 60 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2049
             activeHelpKey: floodFillMaxError
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2050
             visibilityChannel: cropBoxIsNotDialog
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2051
             translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2052
             adjust: left
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2053
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2054
          (InputFieldSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2055
             name: 'EntryField2'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2056
             layout: (LayoutFrame 132 0 38 0 190 0 60 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2057
             activeHelpKey: floodFillMaxError
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2058
             visibilityChannel: cropBoxIsNotDialog
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2059
             tabable: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2060
             model: floodFillMaxHueError
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2061
             type: number
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2062
             acceptChannel: acceptChannel
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2063
             acceptOnPointerLeave: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2064
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2065
          (LabelSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2066
             label: 'Light:'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2067
             name: 'Label3'
3440
4e18ffc36717 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3436
diff changeset
  2068
             layout: (LayoutFrame 29 0 64 0 127 0 86 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2069
             activeHelpKey: floodFillMaxError
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2070
             visibilityChannel: cropBoxIsNotDialog
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2071
             translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2072
             adjust: left
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2073
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2074
          (InputFieldSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2075
             name: 'EntryField3'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2076
             layout: (LayoutFrame 132 0 64 0 190 0 86 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2077
             activeHelpKey: floodFillMaxError
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2078
             visibilityChannel: cropBoxIsNotDialog
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2079
             tabable: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2080
             model: floodFillMaxLightError
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2081
             type: number
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2082
             acceptChannel: acceptChannel
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2083
             acceptOnPointerLeave: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2084
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2085
          (HorizontalPanelViewSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2086
             name: 'HorizontalPanel1'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2087
             layout: (LayoutFrame 0 0.0 -30 1 0 1.0 0 1)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2088
             visibilityChannel: cropBoxIsDialog
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2089
             horizontalLayout: fitSpace
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2090
             verticalLayout: center
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2091
             horizontalSpace: 3
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2092
             verticalSpace: 3
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2093
             reverseOrderIfOKAtLeft: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2094
             component: 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2095
            (SpecCollection
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2096
               collection: (
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2097
                (ActionButtonSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2098
                   label: 'Cancel'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2099
                   name: 'Button1'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2100
                   translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2101
                   resizeForLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2102
                   tabable: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2103
                   model: cancel
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2104
                   extent: (Point 116 28)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2105
                 )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2106
                (ActionButtonSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2107
                   label: 'Apply'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2108
                   name: 'Button3'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2109
                   translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2110
                   resizeForLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2111
                   tabable: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2112
                   model: applyCropAction
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2113
                   extent: (Point 116 28)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2114
                 )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2115
                (ActionButtonSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2116
                   label: 'OK'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2117
                   name: 'Button2'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2118
                   translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2119
                   resizeForLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2120
                   tabable: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2121
                   model: accept
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2122
                   extent: (Point 116 28)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2123
                 )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2124
                )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2125
              
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2126
             )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2127
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2128
          )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2129
        
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2130
       )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2131
     )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2132
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2133
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2134
shiftDialogSpec
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2135
    "This resource specification was automatically generated
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2136
     by the UIPainter of ST/X."
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2137
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2138
    "Do not manually edit this!! If it is corrupted,
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2139
     the UIPainter may not be able to read the specification."
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2140
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2141
    "
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2142
     UIPainter new openOnClass:ImageEditor andSelector:#shiftDialogSpec
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2143
     ImageEditor new openInterface:#shiftDialogSpec
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2144
    "
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2145
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2146
    <resource: #canvas>
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2147
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2148
    ^ 
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2149
     #(FullSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2150
        name: shiftDialogSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2151
        window: 
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2152
       (WindowSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2153
          label: 'Shift'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2154
          name: 'Shift'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2155
          min: (Point 10 10)
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2156
          bounds: (Rectangle 14 46 259 229)
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2157
        )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2158
        component: 
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2159
       (SpecCollection
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2160
          collection: (
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2161
           (LabelSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2162
              label: 'Amount:'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2163
              name: 'AmountLabel'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2164
              layout: (LayoutFrame 14 0 21 0 90 0 43 0)
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2165
              translateLabel: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2166
              adjust: right
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2167
            )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2168
           (InputFieldSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2169
              name: 'AmountEntryField'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2170
              layout: (LayoutFrame 95 0 21 0 139 0 43 0)
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2171
              tabable: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2172
              model: shiftAmount
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2173
              type: number
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2174
              acceptChannel: acceptChannel
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2175
              acceptOnPointerLeave: false
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2176
            )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2177
           (HorizontalPanelViewSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2178
              name: 'HorizontalPanel1'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2179
              layout: (LayoutFrame 0 0.0 -30 1 0 1.0 0 1)
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2180
              horizontalLayout: fitSpace
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2181
              verticalLayout: center
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2182
              horizontalSpace: 3
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2183
              verticalSpace: 3
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2184
              reverseOrderIfOKAtLeft: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2185
              component: 
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2186
             (SpecCollection
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2187
                collection: (
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2188
                 (ActionButtonSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2189
                    label: 'Cancel'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2190
                    name: 'Button1'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2191
                    translateLabel: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2192
                    tabable: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2193
                    model: cancel
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2194
                    extent: (Point 118 22)
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2195
                  )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2196
                 (ActionButtonSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2197
                    label: 'OK'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2198
                    name: 'Button2'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2199
                    translateLabel: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2200
                    tabable: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2201
                    model: accept
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2202
                    extent: (Point 118 22)
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2203
                  )
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2204
                 )
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2205
               
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2206
              )
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2207
            )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2208
           (ArrowButtonSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2209
              name: 'upArrowButton'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2210
              layout: (LayoutFrame 105 0 63 0 127 0 85 0)
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2211
              model: shiftUpNow
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2212
              isTriggerOnDown: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2213
              autoRepeat: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2214
              actionValue: ''
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2215
              direction: up
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2216
            )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2217
           (ArrowButtonSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2218
              name: 'leftArrowButton'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2219
              layout: (LayoutFrame 84 0 86 0 106 0 108 0)
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2220
              model: shiftLeftNow
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2221
              isTriggerOnDown: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2222
              autoRepeat: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2223
              actionValue: ''
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2224
              direction: left
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2225
            )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2226
           (ArrowButtonSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2227
              name: 'rightArrowButton'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2228
              layout: (LayoutFrame 126 0 86 0 148 0 108 0)
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2229
              model: shiftRightNow
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2230
              isTriggerOnDown: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2231
              autoRepeat: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2232
              actionValue: ''
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2233
              direction: right
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2234
            )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2235
           (ArrowButtonSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2236
              name: 'downArrowButton'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2237
              layout: (LayoutFrame 105 0 107 0 127 0 129 0)
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2238
              model: shiftDownNow
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2239
              isTriggerOnDown: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2240
              autoRepeat: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2241
              actionValue: ''
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2242
              direction: down
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2243
            )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2244
           (CheckBoxSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2245
              label: 'Wrap'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2246
              name: 'CheckBox1'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2247
              layout: (LayoutFrame 153 0 22 0 289 0 44 0)
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2248
              model: wrap
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2249
              translateLabel: true
1713
088ff38c03a5 shift + wrap
Claus Gittinger <cg@exept.de>
parents: 1708
diff changeset
  2250
            )
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2251
           )
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2252
         
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2253
        )
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2254
      )
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2255
!
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2256
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2257
uncropSpec
1480
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  2258
    "This resource specification was automatically generated
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  2259
     by the UIPainter of ST/X."
1796
e2c8c895443a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
  2260
1480
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  2261
    "Do not manually edit this!! If it is corrupted,
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  2262
     the UIPainter may not be able to read the specification."
1796
e2c8c895443a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
  2263
1480
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  2264
    "
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2265
     UIPainter new openOnClass:ImageEditor andSelector:#uncropSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2266
     ImageEditor new openInterface:#uncropSpec
1480
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  2267
    "
1796
e2c8c895443a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
  2268
e2c8c895443a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
  2269
    <resource: #canvas>
e2c8c895443a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
  2270
e2c8c895443a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
  2271
    ^ 
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2272
    #(FullSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2273
       name: uncropSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2274
       window: 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2275
      (WindowSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2276
         label: 'Add Border(s)'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2277
         name: 'Add Border(s)'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2278
         min: (Point 10 10)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2279
         max: (Point 800 478)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2280
         bounds: (Rectangle 0 0 261 228)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2281
       )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2282
       component: 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2283
      (SpecCollection
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2284
         collection: (
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2285
          (LabelSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2286
             label: 'Left:'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2287
             name: 'Label1'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2288
             layout: (LayoutFrame 14 0 21 0 90 0 43 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2289
             translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2290
             adjust: right
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2291
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2292
          (InputFieldSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2293
             name: 'EntryField1'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2294
             layout: (LayoutFrame 95 0 21 0 132 0 43 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2295
             model: cropLeftAmount
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2296
             type: number
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2297
             acceptOnPointerLeave: false
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2298
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2299
          (LabelSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2300
             label: 'Right:'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2301
             name: 'Label2'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2302
             layout: (LayoutFrame 14 0 51 0 90 0 73 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2303
             translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2304
             adjust: right
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2305
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2306
          (InputFieldSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2307
             name: 'EntryField2'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2308
             layout: (LayoutFrame 95 0 51 0 132 0 73 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2309
             model: cropRightAmount
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2310
             type: number
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2311
             acceptOnPointerLeave: false
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2312
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2313
          (LabelSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2314
             label: 'Top:'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2315
             name: 'Label3'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2316
             layout: (LayoutFrame 14 0 81 0 90 0 103 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2317
             translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2318
             adjust: right
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2319
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2320
          (InputFieldSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2321
             name: 'EntryField3'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2322
             layout: (LayoutFrame 95 0 81 0 132 0 103 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2323
             model: cropTopAmount
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2324
             type: number
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2325
             acceptOnPointerLeave: false
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2326
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2327
          (LabelSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2328
             label: 'Bottom:'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2329
             name: 'Label4'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2330
             layout: (LayoutFrame 14 0 111 0 90 0 133 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2331
             translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2332
             adjust: right
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2333
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2334
          (InputFieldSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2335
             name: 'EntryField4'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2336
             layout: (LayoutFrame 95 0 111 0 132 0 133 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2337
             model: cropBottomAmount
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2338
             type: number
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2339
             acceptOnPointerLeave: false
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2340
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2341
          (HorizontalPanelViewSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2342
             name: 'HorizontalPanel1'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2343
             layout: (LayoutFrame 0 0.0 -30 1 0 1.0 0 1)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2344
             horizontalLayout: fitSpace
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2345
             verticalLayout: center
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2346
             horizontalSpace: 3
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2347
             verticalSpace: 3
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2348
             reverseOrderIfOKAtLeft: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2349
             component: 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2350
            (SpecCollection
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2351
               collection: (
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2352
                (ActionButtonSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2353
                   label: 'Cancel'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2354
                   name: 'Button1'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2355
                   translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2356
                   model: cancel
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2357
                   extent: (Point 124 22)
1796
e2c8c895443a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
  2358
                 )
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2359
                (ActionButtonSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2360
                   label: 'OK'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2361
                   name: 'Button2'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2362
                   translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2363
                   model: accept
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2364
                   extent: (Point 125 22)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2365
                 )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2366
                )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2367
              
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2368
             )
1796
e2c8c895443a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
  2369
           )
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2370
          )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2371
        
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2372
       )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2373
     )
1480
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  2374
!
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  2375
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2376
windowSpec
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2377
    "This resource specification was automatically generated
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2378
     by the UIPainter of ST/X."
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2379
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2380
    "Do not manually edit this!! If it is corrupted,
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2381
     the UIPainter may not be able to read the specification."
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2382
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2383
    "
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2384
     UIPainter new openOnClass:ImageEditor andSelector:#windowSpec
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2385
     ImageEditor new openInterface:#windowSpec
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2386
     ImageEditor open
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2387
    "
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2388
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2389
    <resource: #canvas>
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2390
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  2391
    ^ 
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2392
    #(FullSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2393
       name: windowSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2394
       window: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2395
      (WindowSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2396
         label: 'Image Editor'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2397
         name: 'Image Editor'
3443
b9d9eb4b34f9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3442
diff changeset
  2398
         min: (Point 800 400)
b9d9eb4b34f9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3442
diff changeset
  2399
         bounds: (Rectangle 0 0 800 446)
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2400
         menu: menu
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2401
         icon: defaultIcon
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2402
       )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2403
       component: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2404
      (SpecCollection
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2405
         collection: (
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2406
          (MenuPanelSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2407
             name: 'menuToolbarView'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2408
             layout: (LayoutFrame 0 0.0 0 0 0 1.0 32 0)
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2409
             style: (FontDescription helvetica medium roman 10)
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2410
             menu: menuToolbar
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2411
             showSeparatingLines: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2412
           )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2413
          (VariableHorizontalPanelSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2414
             name: 'mainPanel'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2415
             layout: (LayoutFrame 0 0.0 34 0.0 0 1.0 -26 1.0)
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2416
             snapMode: both
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2417
             barLevel: 0
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2418
             component: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2419
            (SpecCollection
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2420
               collection: (
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2421
                (ViewSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2422
                   name: 'leftView'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2423
                   level: 1
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2424
                   component: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2425
                  (SpecCollection
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2426
                     collection: (
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2427
                      (VariableVerticalPanelSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2428
                         name: 'verticalPanel'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2429
                         layout: (LayoutFrame 0 0.0 0 0.0 0 1.0 0 1.0)
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2430
                         level: 0
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2431
                         snapMode: both
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2432
                         component: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2433
                        (SpecCollection
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2434
                           collection: (
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2435
                            (ViewSpec
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  2436
                               name: 'ColorAnCropBox'
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2437
                               component: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2438
                              (SpecCollection
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2439
                                 collection: (
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2440
                                  (TabViewSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2441
                                     name: 'TabHeader1'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2442
                                     layout: (LayoutFrame 0 0 0 0 0 1 36 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2443
                                     model: colorCropTabSelectionIndexHolder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2444
                                     menu: colorCropTabLabelList
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2445
                                     useIndex: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2446
                                     translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2447
                                   )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2448
                                  (ViewSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2449
                                     name: 'ColorBox'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2450
                                     layout: (LayoutFrame 0 0 36 0 0 1 0 1)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2451
                                     visibilityChannel: colorBoxVisibleHolder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2452
                                     component: 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2453
                                    (SpecCollection
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2454
                                       collection: (
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2455
                                        (MenuPanelSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2456
                                           name: 'MouseButtonColorToolBar'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2457
                                           layout: (LayoutFrame 0 0.0 0 0 0 1.0 24 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2458
                                           level: 0
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2459
                                           menu: menuMouseButtonColors
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2460
                                         )
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2461
                                        (LabelSpec
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2462
                                           label: 'Label'
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2463
                                           name: 'Label1'
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2464
                                           layout: (LayoutFrame -160 1 0 0 -104 1 22 0)
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2465
                                           translateLabel: true
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2466
                                           labelChannel: alphaText
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2467
                                           visibilityChannel:  alphaVisibleHolder
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2468
                                           activeHelpKey: drawingAlpha
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2469
                                         )
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2470
                                        (InputFieldSpec
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2471
                                           name: 'EntryField1'
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2472
                                           layout: (LayoutFrame -106 1 2 0 -56 1 22 0)
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2473
                                           acceptOnReturn: true
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2474
                                           acceptOnTab: true
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2475
                                           acceptOnPointerLeave: true
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2476
                                           visibilityChannel:  alphaVisibleHolder
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2477
                                           activeHelpKey: drawingAlpha
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2478
                   model: alphaHolder
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2479
                   type: numberInRange
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2480
                   numChars: 3
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2481
                   minValue: 0
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2482
                   maxValue: 100
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2483
                                         )
3421
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2484
                                        (ViewSpec
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2485
                                           name: 'Box1'
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2486
                                           layout: (LayoutFrame -40 1.0 4 0 -26 1.0 18 0)
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2487
                                           activeHelpKey: drawingColor1
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2488
                                           level: -1
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2489
                                           backgroundChannel: drawingColor1Holder
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2490
                                         )
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2491
                                        (ViewSpec
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2492
                                           name: 'Box2'
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2493
                                           layout: (LayoutFrame -25 1.0 4 0 -11 1.0 18 0)
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2494
                                           activeHelpKey: drawingColor2
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2495
                                           level: -1
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2496
                                           backgroundChannel: drawingColor2Holder
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2497
                                         )
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2498
                                        (DataSetSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2499
                                           name: 'colorDataSetView'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2500
                                           layout: (LayoutFrame 0 0.0 26 0.0 0 1.0 0 1.0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2501
                                           activeHelpKey: colorMapTable
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2502
                                           style: (FontDescription helvetica medium roman 10)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2503
                                           model: selectedColors
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2504
                                           menu: colorMapMenuHolder
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2505
                                           hasHorizontalScrollBar: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2506
                                           hasVerticalScrollBar: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2507
                                           miniScrollerHorizontal: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2508
                                           miniScrollerVertical: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2509
                                           dataList: listOfColors
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2510
                                           has3Dseparators: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2511
                                           doubleClickSelector: doubleClickOnColor:
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2512
                                           columnHolder: colorTableColumns
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2513
                                           multipleSelectOk: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2514
                                           verticalSpacing: 1
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2515
                                           columnAdaptor: colorColumnAdaptor
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2516
                                         )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2517
                                        )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2518
                                      
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2519
                                     )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2520
                                   )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2521
                                  (ViewSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2522
                                     name: 'FloodFillBox'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2523
                                     layout: (LayoutFrame 0 0 36 0 0 1 0 1)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2524
                                     visibilityChannel: floodFillBoxVisibleHolder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2525
                                     component: 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2526
                                    (SpecCollection
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2527
                                       collection: (
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2528
                                        (UISubSpecification
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2529
                                           name: 'SubSpecification2'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2530
                                           layout: (LayoutFrame 0 0 0 0 0 1 0 1)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2531
                                           minorKey: floodFillToleranceSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2532
                                         )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2533
                                        )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2534
                                      
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2535
                                     )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2536
                                   )
3400
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2537
                                  (ViewSpec
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2538
                                     name: 'CropBox'
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2539
                                     layout: (LayoutFrame 0 0 36 0 0 1 0 1)
3400
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2540
                                     visibilityChannel: cropBoxVisibleHolder
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2541
                                     component: 
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2542
                                    (SpecCollection
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2543
                                       collection: (
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2544
                                        (UISubSpecification
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2545
                                           name: 'SubSpecification1'
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2546
                                           layout: (LayoutFrame 0 0 0 0 0 1 0 1)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2547
                                           minorKey: cropSpec
3400
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2548
                                         )
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2549
                                        )
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2550
                                      
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2551
                                     )
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2552
                                   )
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2553
                                  )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2554
                                
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2555
                               )
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  2556
                             )
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2557
                            (ArbitraryComponentSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2558
                               name: 'imagePreView'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2559
                               activeHelpKey: previewView
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2560
                               menu: previewMenu
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2561
                               hasHorizontalScrollBar: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2562
                               hasVerticalScrollBar: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2563
                               miniScrollerHorizontal: false
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2564
                               miniScrollerVertical: false
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2565
                               hasBorder: false
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2566
                               component: ImageView
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2567
                             )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2568
                            )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2569
                          
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2570
                         )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2571
                         handles: (Any 0.5 1.0)
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  2572
                       )
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2573
                      )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2574
                    
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2575
                   )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2576
                 )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2577
                (ViewSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2578
                   name: 'rightView'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2579
                   component: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2580
                  (SpecCollection
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2581
                     collection: (
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2582
                      (MenuPanelSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2583
                         name: 'ToolBar1'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2584
                         layout: (LayoutFrame 0 0 0 0.0 28 0 0 1.0)
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2585
                         level: 1
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2586
                         menu: toolsMenuToolbar
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2587
                         verticalLayout: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2588
                         centerItems: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2589
                         textDefault: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2590
                       )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2591
                      (ViewSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2592
                         name: 'editingView'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2593
                         layout: (LayoutFrame 28 0.0 0 0.0 0 1.0 0 1.0)
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2594
                         level: 1
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2595
                         component: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2596
                        (SpecCollection
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2597
                           collection: (
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2598
                            (ArbitraryComponentSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2599
                               name: 'imageEditView'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2600
                               layout: (LayoutFrame 2 0.0 2 0.0 -2 1.0 -24 1.0)
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2601
                               hasHorizontalScrollBar: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2602
                               hasVerticalScrollBar: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2603
                               hasBorder: false
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2604
                               component: ImageEditView
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2605
                             )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2606
                            (LabelSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2607
                               name: 'coordLabel'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2608
                               layout: (LayoutFrame 2 0.0 -22 1 -83 1.0 0 1.0)
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2609
                               level: -1
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2610
                               translateLabel: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2611
                               labelChannel: imageInfoHolder
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2612
                               resizeForLabel: false
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2613
                               adjust: left
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  2614
                             )
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2615
                            (ArrowButtonSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2616
                               name: 'magnifyDownButton'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2617
                               layout: (LayoutFrame -80 1 -22 1 -58 1 0 1)
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2618
                               activeHelpKey: magnifyImageDown
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2619
                               translateLabel: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2620
                               model: doMagnifyDown
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2621
                               enableChannel: imageIsLoadedHolder
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2622
                               isTriggerOnDown: true
3479
8053bda07548 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3478
diff changeset
  2623
                               autoRepeat: true
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2624
                               direction: left
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2625
                             )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2626
                            (ArrowButtonSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2627
                               name: 'magnifyUpButton'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2628
                               layout: (LayoutFrame -24 1 -22 1 -2 1 0 1)
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2629
                               activeHelpKey: magnifyImageUp
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2630
                               translateLabel: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2631
                               model: doMagnifyUp
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2632
                               enableChannel: imageIsLoadedHolder
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2633
                               isTriggerOnDown: true
3479
8053bda07548 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3478
diff changeset
  2634
                               autoRepeat: true
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2635
                               direction: right
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2636
                             )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2637
                            (InputFieldSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2638
                               name: 'magnificationInputField'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2639
                               layout: (LayoutFrame -57 1 -22 1 -26 1 0 1)
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2640
                               activeHelpKey: magnificationNumber
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2641
                               enableChannel: imageIsLoadedHolder
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2642
                               model: magnificationHolder
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2643
                               type: numberInRange
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2644
                               acceptOnReturn: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2645
                               acceptOnTab: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2646
                               numChars: 2
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2647
                               minValue: 1
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2648
                               maxValue: 99
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2649
                               acceptOnPointerLeave: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2650
                             )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2651
                            )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2652
                          
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2653
                         )
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  2654
                       )
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2655
                      )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2656
                    
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2657
                   )
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  2658
                 )
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2659
                )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2660
              
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2661
             )
3443
b9d9eb4b34f9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3442
diff changeset
  2662
             handles: (Any 0.47999999999999998 1.0)
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  2663
           )
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2664
          (UISubSpecification
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2665
             name: 'infoBarSubSpec'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2666
             layout: (LayoutFrame 0 0.0 -24 1 0 1.0 0 1.0)
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2667
             majorKey: ToolApplicationModel
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2668
             minorKey: windowSpecForInfoBar
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2669
           )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2670
          )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2671
        
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2672
       )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2673
     )
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2674
3488
e9655ba452c7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3487
diff changeset
  2675
    "Modified: / 05-09-2017 / 10:46:56 / cg"
519
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  2676
! !
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  2677
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  2678
!ImageEditor class methodsFor:'menu specs'!
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  2679
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2680
colorMapMenu
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2681
    "This resource specification was automatically generated
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2682
     by the MenuEditor of ST/X."
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2683
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2684
    "Do not manually edit this!! If it is corrupted,
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2685
     the MenuEditor may not be able to read the specification."
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2686
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2687
    "
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2688
     MenuEditor new openOnClass:ImageEditor andSelector:#colorMapMenu
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2689
     (Menu new fromLiteralArrayEncoding:(ImageEditor colorMapMenu)) startUp
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2690
    "
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2691
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2692
    <resource: #menu>
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2693
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2694
    ^ 
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2695
     #(Menu
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2696
        (
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2697
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2698
            enabled: canAddColorToColormapHolder
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2699
            label: 'Add Color'
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2700
            itemValue: addColorToColormap
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2701
            translateLabel: true
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2702
          )
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2703
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2704
            enabled: canAddColorToColormapHolder
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  2705
            label: 'Add & Paste Color'
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  2706
            itemValue: addPastedColorToColormap
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  2707
            translateLabel: true
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  2708
          )
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  2709
         (MenuItem
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  2710
            enabled: canAddColorToColormapHolder
2539
3fa0fde65f75 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
  2711
            label: 'Pick and Add Color...'
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2712
            itemValue: pickAndAddColorToColormap
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2713
            translateLabel: true
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2714
          )
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2715
         (MenuItem
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2716
            label: '-'
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2717
          )
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2718
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2719
            enabled: hasColormapAndSingleColorSelectedHolder
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2720
            label: 'Cut Color'
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2721
            itemValue: cutColorFromColormap
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2722
            translateLabel: true
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2723
            isVisible: false
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2724
          )
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2725
         (MenuItem
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2726
            enabled: hasSingleColorSelectedHolder
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2727
            label: 'Copy Color'
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2728
            itemValue: copyColorFromColormap
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2729
            translateLabel: true
2841
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  2730
            shortcutKey: Copy
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2731
          )
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2732
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2733
            enabled: hasColormapAndSingleWritableColorSelectedHolder
2539
3fa0fde65f75 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
  2734
            label: 'Pick and Paste Color...'
1933
2fe701f721ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1931
diff changeset
  2735
            itemValue: pickAndPasteColor
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2736
            translateLabel: true
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2737
          )
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2738
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2739
            enabled: canChangeColorInColormapHolder
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2740
            label: 'Paste Color'
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2741
            itemValue: pasteColorIntoColormap
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2742
            translateLabel: true
2841
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  2743
            shortcutKey: Paste
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2744
          )
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2745
         (MenuItem
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2746
            label: '-'
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2747
          )
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2748
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2749
            enabled: hasColormapAndSingleWritableColorSelectedHolder
2539
3fa0fde65f75 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
  2750
            label: 'Edit Color...'
1931
34b208e7231f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  2751
            itemValue: editSelectedColor
34b208e7231f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  2752
            translateLabel: true
34b208e7231f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  2753
          )
34b208e7231f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  2754
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2755
            enabled: hasColormapAndSingleWritableColorSelectedHolder
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2756
            label: 'Brighter'
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2757
            itemValue: makeSelectedColorBrighter
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2758
            translateLabel: true
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2759
          )
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2760
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2761
            enabled: hasColormapAndSingleWritableColorSelectedHolder
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2762
            label: 'Darker'
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2763
            itemValue: makeSelectedColorDarker
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2764
            translateLabel: true
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2765
          )
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2766
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2767
            enabled: hasColormapAndSingleWritableColorSelectedHolder
1884
2c4d13ecd7ed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1883
diff changeset
  2768
            label: 'Make Gray'
2c4d13ecd7ed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1883
diff changeset
  2769
            itemValue: makeSelectedColorGray
2c4d13ecd7ed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1883
diff changeset
  2770
            translateLabel: true
2c4d13ecd7ed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1883
diff changeset
  2771
          )
2c4d13ecd7ed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1883
diff changeset
  2772
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2773
            enabled: hasColormapAndSingleWritableColorSelectedHolder
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2774
            label: 'Color Shift'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2775
            itemValue: makeSelectedColorShifted
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2776
            translateLabel: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2777
          )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2778
         (MenuItem
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2779
            label: '-'
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2780
          )
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2781
         (MenuItem
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2782
            enabled: hasSingleColorSelectedHolder
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2783
            label: 'Inspect Color'
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2784
            itemValue: inspectColor
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2785
            translateLabel: true
2651
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  2786
          )
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  2787
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2788
            enabled: imageHasColormapHolder
2651
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  2789
            label: 'Inspect Colormap'
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  2790
            itemValue: inspectColormap
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  2791
            translateLabel: true
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2792
          )
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2793
         )
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2794
        nil
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2795
        nil
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2796
      )
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2797
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  2798
    "Modified: / 08-10-2017 / 15:02:33 / cg"
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2799
!
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2800
400
228524287573 intitial checkin
tz
parents:
diff changeset
  2801
menu
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  2802
    "This resource specification was automatically generated
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  2803
     by the MenuEditor of ST/X."
400
228524287573 intitial checkin
tz
parents:
diff changeset
  2804
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  2805
    "Do not manually edit this!! If it is corrupted,
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  2806
     the MenuEditor may not be able to read the specification."
400
228524287573 intitial checkin
tz
parents:
diff changeset
  2807
228524287573 intitial checkin
tz
parents:
diff changeset
  2808
    "
228524287573 intitial checkin
tz
parents:
diff changeset
  2809
     MenuEditor new openOnClass:ImageEditor andSelector:#menu
228524287573 intitial checkin
tz
parents:
diff changeset
  2810
     (Menu new fromLiteralArrayEncoding:(ImageEditor menu)) startUp
228524287573 intitial checkin
tz
parents:
diff changeset
  2811
    "
228524287573 intitial checkin
tz
parents:
diff changeset
  2812
228524287573 intitial checkin
tz
parents:
diff changeset
  2813
    <resource: #menu>
228524287573 intitial checkin
tz
parents:
diff changeset
  2814
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2815
    ^ 
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2816
     #(Menu
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2817
        (
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2818
         (MenuItem
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2819
            label: '&File'
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2820
            translateLabel: true
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  2821
            submenuChannel: menuFile
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2822
            "/ keepLinkedMenu: true
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2823
          )
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2824
         (MenuItem
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2825
            label: 'Edit'
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2826
            translateLabel: true
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  2827
            submenuChannel: menuEdit
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2828
            "/ keepLinkedMenu: true
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2829
          )
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2830
         (MenuItem
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2831
            label: 'Mode'
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2832
            translateLabel: true
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2833
            submenuChannel: modeMenu
3374
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  2834
            isVisible: modeMenuVisible
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  2835
          )
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2836
         (MenuItem
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  2837
            label: 'Image'
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2838
            translateLabel: true
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2839
            submenuChannel: menuColors
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2840
          )
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2841
         (MenuItem
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2842
            label: 'Settings'
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2843
            translateLabel: true
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2844
            submenuChannel: menuSettings
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2845
          )
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2846
         (MenuItem
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2847
            label: 'History'
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2848
            translateLabel: true
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  2849
            isVisible: isStandAlone
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2850
            submenuChannel: menuHistory
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2851
          )
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2852
         (MenuItem
2136
bb10485fa455 support '?' as help (for now: controlled by resources)
Claus Gittinger <cg@exept.de>
parents: 2125
diff changeset
  2853
            label: 'MENU_Help'
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2854
            translateLabel: true
2125
22ad4aa3e495 #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2073
diff changeset
  2855
            startGroup: conditionalRight
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2856
            submenuChannel: menuHelp
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2857
          )
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2858
         )
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2859
        nil
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2860
        nil
400
228524287573 intitial checkin
tz
parents:
diff changeset
  2861
      )
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  2862
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  2863
    "Modified: / 23-10-2017 / 10:39:43 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  2864
!
228524287573 intitial checkin
tz
parents:
diff changeset
  2865
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2866
menuColors
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2867
    "This resource specification was automatically generated
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2868
     by the MenuEditor of ST/X."
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2869
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2870
    "Do not manually edit this!! If it is corrupted,
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2871
     the MenuEditor may not be able to read the specification."
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2872
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  2873
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2874
    "
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2875
     MenuEditor new openOnClass:ImageEditor andSelector:#menuColors
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2876
     (Menu new fromLiteralArrayEncoding:(ImageEditor menuColors)) startUp
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2877
    "
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2878
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2879
    <resource: #menu>
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2880
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2881
    ^ 
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2882
     #(Menu
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2883
        (
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2884
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  2885
            enabled: imageIsLoaded
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2886
            label: 'Depth'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2887
            submenu: 
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2888
           (Menu
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2889
              (
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2890
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2891
                  activeHelpKey: colorMap1
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  2892
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2893
                  label: '1-Plane'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2894
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2895
                  argument: depth1
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2896
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2897
                  choiceValue: depth1
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2898
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2899
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2900
                  activeHelpKey: colorMap1M
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  2901
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2902
                  label: '1-Plane + Mask'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2903
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2904
                  argument: masked1
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2905
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2906
                  choiceValue: masked1
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2907
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2908
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2909
                  label: '-'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2910
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2911
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2912
                  activeHelpKey: colorMap2
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  2913
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2914
                  label: '2-Plane'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2915
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2916
                  argument: depth2
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2917
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2918
                  choiceValue: depth2
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2919
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2920
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2921
                  activeHelpKey: colorMap2M
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  2922
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2923
                  label: '2-Plane + Mask'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2924
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2925
                  argument: masked2
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2926
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2927
                  choiceValue: masked2
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2928
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2929
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2930
                  label: '-'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2931
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2932
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2933
                  activeHelpKey: colorMap4
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  2934
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2935
                  label: '4-Plane'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2936
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2937
                  argument: depth4
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2938
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2939
                  choiceValue: depth4
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2940
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2941
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2942
                  activeHelpKey: colorMap4M
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  2943
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2944
                  label: '4-Plane + Mask'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2945
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2946
                  argument: masked4
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2947
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2948
                  choiceValue: masked4
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2949
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2950
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2951
                  label: '-'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2952
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2953
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2954
                  activeHelpKey: colorMap8
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  2955
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2956
                  label: '8-Plane'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2957
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2958
                  argument: depth8
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2959
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2960
                  choiceValue: depth8
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2961
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2962
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2963
                  activeHelpKey: colorMap8M
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  2964
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2965
                  label: '8-Plane + Mask'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2966
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2967
                  argument: masked8
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2968
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2969
                  choiceValue: masked8
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2970
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2971
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2972
                  label: '-'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2973
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2974
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2975
                  activeHelpKey: colorMap16
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  2976
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2977
                  label: '16-Plane'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2978
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2979
                  argument: depth16
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2980
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2981
                  choiceValue: depth16
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2982
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2983
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2984
                  activeHelpKey: colorMap16M
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  2985
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2986
                  label: '16-Plane + Mask'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2987
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2988
                  argument: masked16
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2989
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2990
                  choiceValue: masked16
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2991
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2992
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2993
                  label: '-'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2994
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2995
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2996
                  activeHelpKey: colorMap24
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  2997
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2998
                  label: '24-Plane'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2999
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3000
                  argument: depth24
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3001
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3002
                  choiceValue: depth24
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3003
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3004
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3005
                  activeHelpKey: colorMap24M
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3006
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3007
                  label: '24-Plane + Mask'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3008
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3009
                  argument: masked24
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3010
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3011
                  choiceValue: masked24
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3012
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3013
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3014
                  label: '-'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3015
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3016
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3017
                  activeHelpKey: colorMap32
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3018
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3019
                  label: '32-Plane (rgba)'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3020
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3021
                  argument: depth32
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3022
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3023
                  choiceValue: depth32
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3024
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3025
               )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3026
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3027
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3028
            )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3029
          )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3030
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3031
            enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3032
            label: 'ColorMap'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3033
            submenu: 
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3034
           (Menu
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3035
              (
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3036
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3037
                  activeHelpKey: compressColormap
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3038
                  enabled: hasColormapHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3039
                  label: 'Compress Colormap'
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3040
                  itemValue: #'menu_compressColorMap'
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3041
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3042
               (MenuItem
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3043
                  enabled: hasColormapHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3044
                  label: 'Sort Colormap'
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3045
                  itemValue: #'menu_sortColorMap'
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3046
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3047
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3048
                  label: 'Reduce Number of Colors by Rounding...'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3049
                  itemValue: reduceNumberOfColors2
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3050
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3051
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3052
                  label: 'Reduce Number of Colors by Masking Bits...'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3053
                  itemValue: reduceNumberOfColors
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  3054
                )
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3055
               )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3056
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3057
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3058
            )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3059
          )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3060
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3061
            enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3062
            label: 'Process'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3063
            submenu: 
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3064
           (Menu
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3065
              (
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3066
               (MenuItem
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3067
                  label: 'Negative'
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3068
                  itemValue: makeNegative
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3069
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3070
               (MenuItem
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3071
                  label: 'Invert Pixel Bits'
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3072
                  itemValue: makeInvertedBits
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3073
                  isVisible: hasColormap
3458
159bab42fdbb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
  3074
                )
159bab42fdbb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
  3075
               (MenuItem
159bab42fdbb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
  3076
                  label: '-'
159bab42fdbb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
  3077
                )
159bab42fdbb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
  3078
               (MenuItem
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3079
                  enabled: allowedToChangeImageDimensionAndDepth
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3080
                  label: 'Make dithered 8Bit Palette'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3081
                  itemValue: makeDitheredPaletteImage
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3082
                  isVisible: false
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3083
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3084
               (MenuItem
3458
159bab42fdbb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
  3085
                  label: 'Dither to Depth...'
159bab42fdbb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
  3086
                  itemValue: ditherToDepth
159bab42fdbb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
  3087
                )
159bab42fdbb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
  3088
               (MenuItem
3471
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  3089
                  label: 'Threshold to Depth...'
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  3090
                  itemValue: thresholdToDepth
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3091
                )
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3092
               (MenuItem
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3093
                  label: '-'
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3094
                )
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3095
               (MenuItem
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3096
                  label: 'Make Monochrome...'
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3097
                  itemValue: makeMonochromeImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3098
                )
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3099
               (MenuItem
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3100
                  label: 'Make GrayScale (same Depth)'
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3101
                  itemValue: makeGrayScaleImage
3471
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  3102
                )
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  3103
               (MenuItem
3460
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  3104
                  label: 'Make GrayScale with Depth (Dither)...'
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  3105
                  itemValue: ditherGrayToDepth
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  3106
                )
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  3107
               (MenuItem
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  3108
                  label: 'Make GrayScale with Depth (Threshold)...'
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  3109
                  itemValue: thresholdGrayToDepth
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3110
                )
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3111
               (MenuItem
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3112
                  label: 'Make GrayScale with N Gray Colors (Dither)...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3113
                  itemValue: ditherToNumberOfGrayColors
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3114
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3115
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3116
                  label: 'Make GrayScale with N Gray Colors (Threshold)...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3117
                  itemValue: thresholdToNumberOfGrayColors
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3118
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3119
               (MenuItem
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3120
                  label: '-'
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3121
                )
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3122
               (MenuItem
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3123
                  label: 'Make Slightly Brighter'
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3124
                  itemValue: makeSlightlyBrighter
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3125
                )
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3126
               (MenuItem
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3127
                  label: 'Make Brighter'
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3128
                  itemValue: makeBrighter
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3129
                )
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3130
               (MenuItem
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3131
                  label: 'Make Slightly Darker'
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3132
                  itemValue: makeSlightlyDarker
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3133
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3134
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3135
                  label: 'Make Darker'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3136
                  itemValue: makeDarker
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3137
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3138
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3139
                  label: '-'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3140
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3141
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3142
                  label: 'Change HLS...'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3143
                  itemValue: changeHLS
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3144
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3145
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3146
                  label: 'Colorize...'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3147
                  itemValue: colorize
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3148
                )
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3149
               (MenuItem
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3150
                  enabled: imageIsLoadedHolder
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3151
                  label: 'Brighten'
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3152
                  itemValue: doBrightenImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3153
                )
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3154
               (MenuItem
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3155
                  enabled: imageIsLoadedHolder
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3156
                  label: 'Darken'
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3157
                  itemValue: doDarkenImage
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3158
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3159
               )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3160
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3161
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3162
            )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3163
          )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3164
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3165
            enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3166
            label: 'Mask'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3167
            submenu: 
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3168
           (Menu
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3169
              (
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3170
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3171
                  activeHelpKey: copyMask
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3172
                  enabled: hasMask
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3173
                  label: 'Copy Mask'
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3174
                  itemValue: #'menu_copyMask'
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3175
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3176
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3177
                  activeHelpKey: pasteMask
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3178
                  enabled: hasMask
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3179
                  label: 'Paste Mask'
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3180
                  itemValue: #'menu_pasteMask'
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3181
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3182
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3183
                  enabled: hasMask
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3184
                  label: 'Clear Masked Pixels'
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3185
                  itemValue: #'menu_clearMaskedPixels'
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  3186
                )
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  3187
               (MenuItem
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  3188
                  enabled: hasMask
2653
f0e64b82fa93 changed: #menuColors
Claus Gittinger <cg@exept.de>
parents: 2652
diff changeset
  3189
                  label: 'Clear Colormap Entry for Masked Pixels'
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3190
                  itemValue: #'menu_clearColormapEntry0AndMaskedPixels'
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3191
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3192
               )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3193
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3194
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3195
            )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3196
          )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3197
         )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3198
        nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3199
        nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3200
      )
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3201
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3202
    "Modified: / 23-10-2017 / 11:18:58 / cg"
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3203
!
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3204
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3205
menuEdit
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3206
    "This resource specification was automatically generated
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3207
     by the MenuEditor of ST/X."
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3208
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3209
    "Do not manually edit this!! If it is corrupted,
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3210
     the MenuEditor may not be able to read the specification."
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3211
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3212
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3213
    "
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3214
     MenuEditor new openOnClass:ImageEditor andSelector:#menuEdit
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3215
     (Menu new fromLiteralArrayEncoding:(ImageEditor menuEdit)) startUp
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3216
    "
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3217
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3218
    <resource: #menu>
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3219
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3220
    ^ 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3221
     #(Menu
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3222
        (
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3223
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3224
            activeHelpKey: editUndo
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3225
            enabled: canUndoHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3226
            label: 'Undo'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3227
            itemValue: doUndo
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3228
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3229
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3230
            label: '-'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3231
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3232
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3233
            enabled: imageIsLoadedHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3234
            label: 'Copy to Clipboard'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3235
            itemValue: doCopyImageToClipboard
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3236
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3237
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3238
            label: '-'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3239
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3240
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3241
            activeHelpKey: editResize
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3242
            enabled: imageIsLoadedAndAllowedToChangeImageDimensionAndDepth
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3243
            label: 'Resize...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3244
            itemValue: doResizeImage
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3245
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3246
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3247
            activeHelpKey: editMagnifyImage
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3248
            enabled: imageIsLoadedAndAllowedToChangeImageDimensionAndDepth
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3249
            label: 'Magnify...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3250
            itemValue: doMagnifyImage
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3251
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3252
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3253
            activeHelpKey: editMagnifyImage
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3254
            enabled: imageIsLoadedAndAllowedToChangeImageDimensionAndDepth
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3255
            label: 'Magnify By...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3256
            itemValue: doMagnifyImageBy
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3257
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3258
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3259
            activeHelpKey: editRotate
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3260
            enabled: imageIsLoadedAndAllowedToChangeImageDimensionAndDepth
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3261
            label: 'Rotate...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3262
            itemValue: doRotateImage
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3263
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3264
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3265
            activeHelpKey: edit3DProjection
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3266
            enabled: imageIsLoadedAndAllowedToChangeImageDimensionAndDepth
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3267
            label: '3D Projection...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3268
            itemValue: do3DProjection
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3269
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3270
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3271
            enabled: imageIsLoadedAndAllowedToFlipHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3272
            label: 'Flip'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3273
            submenu: 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3274
           (Menu
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3275
              (
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3276
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3277
                  activeHelpKey: editFlipVertical
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3278
                  enabled: imageIsLoadedAndNotReadonlyHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3279
                  label: 'Flip - Vertical'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3280
                  itemValue: doFlipVertical
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3281
                  labelImage: (ResourceRetriever ImageEditor flipVerticalIcon 'Flip - Vertical')
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3282
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3283
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3284
                  activeHelpKey: editFlipHorizontal
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3285
                  enabled: imageIsLoadedAndNotReadonlyHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3286
                  label: 'Flip - Horizontal'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3287
                  itemValue: doFlipHorizontal
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3288
                  labelImage: (ResourceRetriever ImageEditor flipHorizontalIcon 'Flip - Horizontal')
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3289
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3290
               )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3291
              nil
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3292
              nil
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3293
            )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3294
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3295
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3296
            label: '-'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3297
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3298
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3299
            enabled: imageIsLoadedAndAllowedToChangeImageDimension
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3300
            label: 'Crop'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3301
            submenu: 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3302
           (Menu
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3303
              (
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3304
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3305
                  activeHelpKey: cropManual
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3306
                  label: 'Manual...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3307
                  itemValue: doCropManual
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3308
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3309
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3310
                  label: '-'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3311
                  isVisible: false
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3312
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3313
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3314
                  activeHelpKey: autoCropAll
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3315
                  label: 'All'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3316
                  itemValue: autoCropAll
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3317
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3318
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3319
                  label: '-'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3320
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3321
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3322
                  activeHelpKey: autoCropLeft
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3323
                  label: 'Left'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3324
                  itemValue: autoCropLeft
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3325
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3326
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3327
                  activeHelpKey: autoCropRight
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3328
                  label: 'Right'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3329
                  itemValue: autoCropRight
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3330
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3331
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3332
                  activeHelpKey: autoCropTop
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3333
                  label: 'Top'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3334
                  itemValue: autoCropTop
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3335
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3336
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3337
                  activeHelpKey: autoCropBottom
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3338
                  label: 'Bottom'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3339
                  itemValue: autoCropBottom
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3340
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3341
               )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3342
              nil
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3343
              nil
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3344
            )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3345
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3346
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3347
            activeHelpKey: uncropManual
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3348
            enabled: imageIsLoadedAndAllowedToChangeImageDimensionAndDepth
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3349
            label: 'Uncrop (Add Border)...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3350
            itemValue: doUnCropManual
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3351
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3352
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3353
            activeHelpKey: shiftManual
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3354
            enabled: imageIsLoadedAndAllowedToChangeImageDimension
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3355
            label: 'Shift...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3356
            itemValue: doShiftManual
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3357
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3358
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3359
            label: '-'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3360
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3361
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3362
            activeHelpKey: fileEditMask
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3363
            enabled: hasMaskHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3364
            label: 'Edit Mask'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3365
            itemValue: doEditMask
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3366
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3367
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3368
            enabled: imageIsLoadedAndNotReadonlyHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3369
            label: 'Text...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3370
            itemValue: doInsertTextFromUser
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3371
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3372
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3373
            label: '-'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3374
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3375
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3376
            enabled: imageIsLoadedHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3377
            label: 'Animation Sequence'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3378
            submenu: 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3379
           (Menu
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3380
              (
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3381
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3382
                  enabled: imageHasNextImageHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3383
                  label: 'Next in Sequence'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3384
                  itemValue: nextImageInSequence
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3385
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3386
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3387
                  enabled: imageHasPreviousImageHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3388
                  label: 'Previous in Sequence'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3389
                  itemValue: previousImageInSequence
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3390
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3391
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3392
                  label: '-'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3393
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3394
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3395
                  enabled: imageHasImageSequenceHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3396
                  label: 'Edit each from Sequence'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3397
                  itemValue: editEachImageFromSequence
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3398
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3399
               )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3400
              nil
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3401
              nil
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3402
            )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3403
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3404
         )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3405
        nil
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3406
        nil
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3407
      )
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3408
!
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3409
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3410
menuFile
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3411
    "This resource specification was automatically generated
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3412
     by the MenuEditor of ST/X."
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3413
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3414
    "Do not manually edit this!! If it is corrupted,
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3415
     the MenuEditor may not be able to read the specification."
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3416
3022
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  3417
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3418
    "
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3419
     MenuEditor new openOnClass:ImageEditor andSelector:#menuFile
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3420
     (Menu new fromLiteralArrayEncoding:(ImageEditor menuFile)) startUp
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3421
    "
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3422
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3423
    <resource: #menu>
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3424
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3425
    ^ 
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3426
     #(Menu
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3427
        (
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3428
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3429
            activeHelpKey: fileNewImageEditor
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3430
            label: 'New ImageEditor'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3431
            itemValue: doNewImageEditor
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3432
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3433
         (MenuItem
2876
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3434
            label: '-'
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3435
          )
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3436
         (MenuItem
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3437
            activeHelpKey: fileNewImage
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3438
            label: 'New...'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3439
            itemValue: doNewImage
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3440
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3441
         (MenuItem
3200
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  3442
            activeHelpKey: fileNewImageFromClipboard
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3443
            label: 'New from ClipBoard'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3444
            itemValue: doNewImageFromClipboard
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3445
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3446
         (MenuItem
3200
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  3447
            activeHelpKey: fileNewMaskFromClipboard
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  3448
            label: 'Mask from ClipBoard'
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  3449
            itemValue: doNewMaskFromClipboard
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  3450
          )
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  3451
         (MenuItem
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3452
            label: '-'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3453
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3454
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3455
            activeHelpKey: fileLoadFromClass
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3456
            label: 'Load...'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3457
            itemValue: doLoadFromClass
3374
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  3458
            isVisible: methodSaveAndLoadMenuItemsVisible
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3459
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3460
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3461
            activeHelpKey: fileLoadFromFile
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3462
            label: 'Load from File...'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3463
            itemValue: doLoadFromFile
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3464
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3465
         (MenuItem
2796
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  3466
            activeHelpKey: fileLoadFromURL
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  3467
            label: 'Load from URL...'
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  3468
            itemValue: doLoadFromURL
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  3469
          )
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  3470
         (MenuItem
2707
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3471
            label: 'Grab'
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3472
            submenu: 
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3473
           (Menu
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3474
              (
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3475
               (MenuItem
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3476
                  activeHelpKey: fileGrabImageFromScreen
2717
fac7e5156235 changed: #menuFile
Claus Gittinger <cg@exept.de>
parents: 2712
diff changeset
  3477
                  label: 'Grab from Screen Area...'
2707
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3478
                  itemValue: grabScreenImage
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3479
                )
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3480
               (MenuItem
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3481
                  activeHelpKey: fileGrabImageFromScreen
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3482
                  enabled: hasLastGrabScreenArea
2711
4700f54d0040 changed: #menuFile
Claus Gittinger <cg@exept.de>
parents: 2708
diff changeset
  3483
                  label: 'Grab again from same Screen Area'
2707
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3484
                  itemValue: grabScreenImageFromLastArea
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3485
                )
2771
244f8e53399b changed: #menuFile
Claus Gittinger <cg@exept.de>
parents: 2767
diff changeset
  3486
               (MenuItem
244f8e53399b changed: #menuFile
Claus Gittinger <cg@exept.de>
parents: 2767
diff changeset
  3487
                  label: '-'
244f8e53399b changed: #menuFile
Claus Gittinger <cg@exept.de>
parents: 2767
diff changeset
  3488
                )
244f8e53399b changed: #menuFile
Claus Gittinger <cg@exept.de>
parents: 2767
diff changeset
  3489
               (MenuItem
244f8e53399b changed: #menuFile
Claus Gittinger <cg@exept.de>
parents: 2767
diff changeset
  3490
                  activeHelpKey: fileGrabImageFromWindow
244f8e53399b changed: #menuFile
Claus Gittinger <cg@exept.de>
parents: 2767
diff changeset
  3491
                  label: 'Grab from Window...'
244f8e53399b changed: #menuFile
Claus Gittinger <cg@exept.de>
parents: 2767
diff changeset
  3492
                  itemValue: grabWindowImage
244f8e53399b changed: #menuFile
Claus Gittinger <cg@exept.de>
parents: 2767
diff changeset
  3493
                )
3422
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  3494
               (MenuItem
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  3495
                  activeHelpKey: fileGrabFullSreenImage
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  3496
                  label: 'Grab from whole Screen'
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  3497
                  itemValue: grabFullScreenImage
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  3498
                )
2707
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3499
               )
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3500
              nil
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3501
              nil
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3502
            )
2701
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  3503
          )
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  3504
         (MenuItem
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3505
            label: '-'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3506
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3507
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3508
            activeHelpKey: fileSaveMethod
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3509
            enabled: imageIsLoadedAndClassDefined
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3510
            label: 'Save'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3511
            itemValue: doSaveMethod
3374
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  3512
            isVisible: methodSaveAndLoadMenuItemsVisible
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3513
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3514
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3515
            activeHelpKey: fileSaveMethodAs
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3516
            enabled: imageIsLoadedHolder
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3517
            label: 'Save As...'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3518
            itemValue: doSaveMethodAs
3374
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  3519
            isVisible: methodSaveAndLoadMenuItemsVisible
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3520
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3521
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3522
            activeHelpKey: fileSaveAs
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3523
            enabled: imageIsLoadedHolder
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3524
            label: 'Save to File...'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3525
            itemValue: doSaveImageFileAs
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3526
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3527
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3528
            activeHelpKey: fileSaveMaskAs
3411
fd6472405fd0 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3409
diff changeset
  3529
            enabled: hasMaskHolder
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3530
            label: 'Save Mask to File...'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3531
            itemValue: doSaveImageMaskFileAs
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3532
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3533
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3534
            activeHelpKey: fileSaveButtonImageAs
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3535
            enabled: imageIsLoadedHolder
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3536
            label: 'Save as Button to File...'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3537
            itemValue: doSaveButtonImageToFileAs
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3538
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3539
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3540
            label: '-'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3541
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3542
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3543
            activeHelpKey: filePrint
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3544
            enabled: imageIsLoadedHolder
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3545
            label: 'Print'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3546
            itemValue: doPrint
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3547
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3548
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3549
            label: '-'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3550
            isVisible: isStandAlone
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3551
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3552
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3553
            activeHelpKey: fileBrowseClass
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3554
            enabled: hasClassDefinedHolder
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3555
            label: 'Browse Class'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3556
            itemValue: doBrowseClass
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3557
            isVisible: isStandAlone
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3558
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3559
         (MenuItem
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3560
            enabled: imageIsLoadedHolder
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3561
            label: 'Inspect Image'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3562
            itemValue: doInspectImage
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3563
            isVisible: isStandAlone
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3564
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3565
         (MenuItem
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3566
            activeHelpKey: fileShowStoreString
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3567
            enabled: imageIsLoadedHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3568
            label: 'Show storeString'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3569
            itemValue: doShowStoreString
3022
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  3570
          )
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  3571
         (MenuItem
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  3572
            activeHelpKey: fileShowStoreString
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  3573
            enabled: imageIsLoadedHolder
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  3574
            label: 'Show Pixel Array Literal String'
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  3575
            itemValue: doShowPixelArrayLiteralString
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3576
          )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3577
         (MenuItem
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3578
            label: '-'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3579
            isVisible: isStandAlone
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3580
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3581
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3582
            activeHelpKey: fileExit
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3583
            label: 'Exit'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3584
            itemValue: closeRequest
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3585
            isVisible: isStandAlone
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3586
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3587
         )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3588
        nil
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3589
        nil
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3590
      )
3411
fd6472405fd0 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3409
diff changeset
  3591
3422
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  3592
    "Modified: / 25-02-2017 / 12:40:30 / cg"
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3593
!
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3594
679
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3595
menuMouseButtonColors
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  3596
    "This resource specification was automatically generated
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  3597
     by the MenuEditor of ST/X."
679
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3598
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  3599
    "Do not manually edit this!! If it is corrupted,
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  3600
     the MenuEditor may not be able to read the specification."
679
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3601
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3602
    "
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3603
     MenuEditor new openOnClass:ImageEditor andSelector:#menuMouseButtonColors
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3604
     (Menu new fromLiteralArrayEncoding:(ImageEditor menuMouseButtonColors)) startUp
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3605
    "
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3606
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3607
    <resource: #menu>
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3608
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3609
    ^
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3610
     
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3611
       #(#Menu
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3612
          
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3613
           #(
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3614
             #(#MenuItem
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3615
                #label: 'Left Mouse Button'
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3616
                #nameKey: #leftMouseKeyButton
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3617
                #activeHelpKey: #mouseKeyColorMode
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3618
                #enabled: #imageIsLoadedHolder
679
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3619
                #labelImage: #(#ResourceRetriever nil #leftMouseKeyIcon)
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  3620
                #choice: #mouseKeyColorMode
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  3621
                #choiceValue: 1
679
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3622
            )
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3623
             #(#MenuItem
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3624
                #label: 'Right Mouse Button'
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3625
                #nameKey: #rightMouseKeyButton
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3626
                #activeHelpKey: #mouseKeyColorMode
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3627
                #enabled: #imageIsLoadedHolder
679
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3628
                #labelImage: #(#ResourceRetriever nil #rightMouseKeyIcon)
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  3629
                #choice: #mouseKeyColorMode
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  3630
                #choiceValue: 2
679
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3631
            )
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3632
          ) nil
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3633
          nil
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3634
      )
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3635
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3636
    "Modified: / 04-07-2010 / 10:17:37 / cg"
679
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3637
!
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3638
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3639
menuSettings
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3640
    "This resource specification was automatically generated
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3641
     by the MenuEditor of ST/X."
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3642
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3643
    "Do not manually edit this!! If it is corrupted,
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3644
     the MenuEditor may not be able to read the specification."
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3645
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3646
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3647
    "
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3648
     MenuEditor new openOnClass:ImageEditor andSelector:#menuSettings
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3649
     (Menu new fromLiteralArrayEncoding:(ImageEditor menuSettings)) startUp
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3650
    "
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3651
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3652
    <resource: #menu>
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3653
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3654
    ^ 
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3655
     #(Menu
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3656
        (
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3657
         (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3658
            activeHelpKey: settingsGridMagnification
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3659
            label: 'Grid Magnification Limit...'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3660
            itemValue: doChangeGridMagnification
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3661
            translateLabel: true
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3662
          )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3663
         (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3664
            label: 'Pen'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3665
            translateLabel: true
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3666
            submenu: 
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3667
           (Menu
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3668
              (
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3669
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3670
                  label: '1'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3671
                  translateLabel: true
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3672
                  choice: penWidthHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3673
                  choiceValue: 1
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3674
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3675
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3676
                  label: '5'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3677
                  translateLabel: true
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3678
                  choice: penWidthHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3679
                  choiceValue: 5
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3680
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3681
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3682
                  label: '10'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3683
                  translateLabel: true
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3684
                  choice: penWidthHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3685
                  choiceValue: 10
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3686
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3687
               )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3688
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3689
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3690
            )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3691
          )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3692
         (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3693
            label: 'Spray'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3694
            translateLabel: true
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3695
            submenu: 
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3696
           (Menu
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3697
              (
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3698
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3699
                  label: '4'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3700
                  translateLabel: true
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3701
                  choice: spraySpotHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3702
                  choiceValue: 4
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3703
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3704
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3705
                  label: '8'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3706
                  translateLabel: true
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3707
                  choice: spraySpotHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3708
                  choiceValue: 8
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3709
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3710
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3711
                  label: '16'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3712
                  translateLabel: true
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3713
                  choice: spraySpotHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3714
                  choiceValue: 16
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3715
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3716
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3717
                  label: '32'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3718
                  translateLabel: true
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3719
                  choice: spraySpotHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3720
                  choiceValue: 32
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3721
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3722
               )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3723
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3724
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3725
            )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3726
          )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3727
         )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3728
        nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3729
        nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3730
      )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3731
!
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3732
400
228524287573 intitial checkin
tz
parents:
diff changeset
  3733
menuToolbar
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  3734
    "This resource specification was automatically generated
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  3735
     by the MenuEditor of ST/X."
400
228524287573 intitial checkin
tz
parents:
diff changeset
  3736
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  3737
    "Do not manually edit this!! If it is corrupted,
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  3738
     the MenuEditor may not be able to read the specification."
400
228524287573 intitial checkin
tz
parents:
diff changeset
  3739
2876
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3740
400
228524287573 intitial checkin
tz
parents:
diff changeset
  3741
    "
228524287573 intitial checkin
tz
parents:
diff changeset
  3742
     MenuEditor new openOnClass:ImageEditor andSelector:#menuToolbar
228524287573 intitial checkin
tz
parents:
diff changeset
  3743
     (Menu new fromLiteralArrayEncoding:(ImageEditor menuToolbar)) startUp
228524287573 intitial checkin
tz
parents:
diff changeset
  3744
    "
228524287573 intitial checkin
tz
parents:
diff changeset
  3745
228524287573 intitial checkin
tz
parents:
diff changeset
  3746
    <resource: #menu>
228524287573 intitial checkin
tz
parents:
diff changeset
  3747
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  3748
    ^ 
1820
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3749
     #(Menu
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3750
        (
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3751
         (MenuItem
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3752
            activeHelpKey: fileNewImage
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3753
            label: 'newImage'
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3754
            itemValue: doNewImage
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3755
            isButton: true
1883
577a267a87cb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
  3756
            labelImage: (ResourceRetriever ToolbarIconLibrary newImageIcon)
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  3757
          )
1820
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3758
         (MenuItem
2876
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3759
            activeHelpKey: fileGrabImageFromScreen
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3760
            label: 'grabScreenImage'
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3761
            itemValue: grabScreenImage
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3762
            isButton: true
2877
1a7cd3e6eea1 changed: #menuToolbar
Claus Gittinger <cg@exept.de>
parents: 2876
diff changeset
  3763
            labelImage: (ResourceRetriever ToolbarIconLibrary snapshot24x24Icon)
2876
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3764
          )
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3765
         (MenuItem
1949
00defdb89630 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1943
diff changeset
  3766
            label: '-'
00defdb89630 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1943
diff changeset
  3767
          )
00defdb89630 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1943
diff changeset
  3768
         (MenuItem
1970
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3769
            activeHelpKey: fileLoadFromClass
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3770
            label: 'loadFromClass'
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3771
            itemValue: doLoadFromClass
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3772
            isButton: true
3374
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  3773
            isVisible: isStandAloneAndMethodSaveAndLoadMenuItemsVisible
1970
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3774
            submenuChannel: menuHistory
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3775
            labelImage: (ResourceRetriever XPToolbarIconLibrary loadImageFromMethodIcon)
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3776
            keepLinkedMenu: true
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3777
          )
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3778
         (MenuItem
2567
903843f8a824 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2556
diff changeset
  3779
            activeHelpKey: fileSaveMethodAs
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3780
            enabled: imageIsLoadedHolder
2567
903843f8a824 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2556
diff changeset
  3781
            label: 'fileSaveMethodAs'
1970
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3782
            itemValue: doSaveMethodAs
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3783
            isButton: true
3374
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  3784
            isVisible: isStandAloneAndMethodSaveAndLoadMenuItemsVisible
1970
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3785
            labelImage: (ResourceRetriever XPToolbarIconLibrary saveImageAsMethodAsIcon)
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3786
          )
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3787
         (MenuItem
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3788
            activeHelpKey: fileSaveMethod
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3789
            enabled: imageIsLoadedHolder
1970
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3790
            label: 'saveAsMethod'
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3791
            itemValue: doSaveMethod
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3792
            isButton: true
3374
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  3793
            isVisible: isNotStandAloneAndMethodSaveAndLoadMenuItemsVisible
2590
9f2cb061d07f changed: #menuToolbar
Claus Gittinger <cg@exept.de>
parents: 2585
diff changeset
  3794
            labelImage: (ResourceRetriever ToolbarIconLibrary saveImageAsMethodIcon)
1970
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3795
          )
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3796
         (MenuItem
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3797
            label: '-'
3374
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  3798
            isVisible: methodSaveAndLoadMenuItemsVisible
1970
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3799
          )
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3800
         (MenuItem
1820
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3801
            activeHelpKey: fileLoadFromFile
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3802
            label: 'loadFromFile'
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3803
            itemValue: doLoadFromFile
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3804
            isButton: true
1884
2c4d13ecd7ed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1883
diff changeset
  3805
            labelImage: (ResourceRetriever ToolbarIconLibrary loadImageFromFileIcon)
1820
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3806
          )
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3807
         (MenuItem
3425
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3808
            activeHelpKey: fileSave
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3809
            enabled: imageIsLoadedHolder
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3810
            label: 'save'
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3811
            itemValue: doSaveImageFile
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3812
            isButton: true
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3813
            isVisible: saveButtonInToolbarVisibleHolder
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3814
            labelImage: (ResourceRetriever ToolbarIconLibrary saveImageIcon)
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3815
          )
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3816
         (MenuItem
1820
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3817
            activeHelpKey: fileSaveAs
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3818
            enabled: imageIsLoadedHolder
1820
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3819
            label: 'saveAsFile'
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3820
            itemValue: doSaveImageFileAs
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3821
            isButton: true
1885
a09ede39c43f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1884
diff changeset
  3822
            labelImage: (ResourceRetriever ToolbarIconLibrary saveImageToFileAsIcon)
1820
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3823
          )
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3824
         (MenuItem
1949
00defdb89630 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1943
diff changeset
  3825
            label: '-'
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  3826
          )
1820
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3827
         (MenuItem
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3828
            activeHelpKey: editUndo
1987
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  3829
            enabled: canUndoHolder
1820
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3830
            label: 'Undo'
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3831
            itemValue: doUndo
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3832
            isButton: true
1883
577a267a87cb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
  3833
            labelImage: (ResourceRetriever ToolbarIconLibrary undoIcon)
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  3834
          )
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3835
         (MenuItem
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3836
            label: '-'
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3837
            isVisible: imageHasImageSequenceHolder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3838
          )
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3839
         (MenuItem
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3840
            activeHelpKey: previousImageInSequence
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3841
            enabled: imageHasPreviousImageHolder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3842
            label: 'Previous Image'
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3843
            itemValue: previousImageInSequence
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3844
            isVisible: imageHasImageSequenceHolder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3845
            labelImage: (ResourceRetriever ToolbarIconLibrary leftArrow24x24Icon)
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3846
          )
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3847
         (MenuItem
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3848
            activeHelpKey: nextImageInSequence
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3849
            enabled: imageHasNextImageHolder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3850
            label: 'Next Image'
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3851
            itemValue: nextImageInSequence
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3852
            isVisible: imageHasImageSequenceHolder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3853
            labelImage: (ResourceRetriever ToolbarIconLibrary rightArrow24x24Icon)
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3854
          )
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3855
         )
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3856
        nil
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3857
        nil
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3858
      )
3425
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3859
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3860
    "Modified: / 26-02-2017 / 23:03:40 / cg"
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3861
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3862
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3863
modeMenu
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3864
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3865
     by the MenuEditor of ST/X."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3866
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3867
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3868
     the MenuEditor may not be able to read the specification."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3869
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3870
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3871
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3872
     MenuEditor new openOnClass:ImageEditor andSelector:#modeMenu
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3873
     (Menu new fromLiteralArrayEncoding:(ImageEditor modeMenu)) startUp
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3874
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3875
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3876
    <resource: #menu>
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3877
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3878
    ^ 
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3879
     #(Menu
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3880
        (
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3881
         (MenuItem
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3882
            activeHelpKey: drawModePoint
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3883
            enabled: imageIsLoadedHolder
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3884
            label: 'Point'
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3885
            labelImage: (ResourceRetriever ImageEditor pointIcon 'Point')
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3886
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3887
            choiceValue: point
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3888
          )
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3889
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3890
            label: '-'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3891
          )
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3892
         (MenuItem
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3893
            activeHelpKey: drawModePoint
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3894
            enabled: imageIsLoadedHolder
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3895
            label: 'Spray'
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3896
            labelImage: (ResourceRetriever ImageEditor sprayIcon 'Spray')
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3897
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3898
            choiceValue: spray
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  3899
          )
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3900
         (MenuItem
3191
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  3901
            activeHelpKey: drawModeSmooth
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  3902
            enabled: imageIsLoadedHolder
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  3903
            label: 'Smooth'
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  3904
            labelImage: (ResourceRetriever ImageEditor smoothIcon 'Smooth')
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  3905
            choice: editMode
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  3906
            choiceValue: smooth
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  3907
          )
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  3908
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3909
            label: '-'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3910
          )
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3911
         (MenuItem
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3912
            activeHelpKey: drawModeBox
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3913
            enabled: imageIsLoadedHolder
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3914
            label: 'Rect'
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3915
            labelImage: (ResourceRetriever ImageEditor rectIcon 'Rect')
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3916
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3917
            choiceValue: box
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  3918
          )
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3919
         (MenuItem
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3920
            activeHelpKey: drawModeFilledBox
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3921
            enabled: imageIsLoadedHolder
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3922
            label: 'Filled Rectangle'
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3923
            labelImage: (ResourceRetriever ImageEditor fillRectIcon 'Filled Rectangle')
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3924
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3925
            choiceValue: filledBox
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  3926
          )
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3927
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3928
            activeHelpKey: drawModeCircle
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3929
            enabled: imageIsLoadedHolder
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3930
            label: 'Circle'
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3931
            labelImage: (ResourceRetriever ImageEditor circleIcon 'Circle')
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3932
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3933
            choiceValue: circle
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  3934
          )
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3935
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3936
            activeHelpKey: drawModeFilledCircle
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3937
            enabled: imageIsLoadedHolder
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3938
            label: 'Filled Circle'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3939
            labelImage: (ResourceRetriever ImageEditor fillCircleIcon 'Filled Circle')
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3940
            choice: editMode
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3941
            choiceValue: filledCircle
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3942
          )
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3943
         (MenuItem
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3944
            activeHelpKey: drawModeFill
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3945
            enabled: imageIsLoadedHolder
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3946
            label: 'Fill'
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3947
            labelImage: (ResourceRetriever ImageEditor fillIcon 'Fill')
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3948
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3949
            choiceValue: fill
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  3950
          )
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3951
         (MenuItem
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3952
            enabled: imageIsLoadedHolder
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3953
            label: 'Gradient Fill'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3954
            isVisible: false
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3955
            submenu: 
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3956
           (Menu
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3957
              (
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3958
               (MenuItem
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3959
                  activeHelpKey: drawModeFill
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3960
                  enabled: imageIsLoadedHolder
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3961
                  label: 'Horizontal'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3962
                  labelImage: (ResourceRetriever ImageEditor fillHorizontalGradientRectIcon 'Horizontal')
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3963
                  choice: editMode
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3964
                  choiceValue: fillHorizontalGradient
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3965
                )
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3966
               (MenuItem
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3967
                  activeHelpKey: drawModeFill
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3968
                  enabled: imageIsLoadedHolder
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3969
                  label: 'Vertical'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3970
                  labelImage: (ResourceRetriever ImageEditor fillVerticalGradientRectIcon 'Vertical')
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3971
                  choice: editMode
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3972
                  choiceValue: fillVerticalGradient
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3973
                )
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3974
               (MenuItem
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3975
                  activeHelpKey: drawModeFill
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3976
                  enabled: imageIsLoadedHolder
3421
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  3977
                  isVisible: false
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3978
                  label: 'Diagonal'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3979
                  labelImage: (ResourceRetriever ImageEditor fillDiagonalGradientRectIcon 'Diagonal')
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3980
                  choice: editMode
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3981
                  choiceValue: fillDiagonalGradient
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3982
                )
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3983
               )
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3984
              nil
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3985
              nil
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3986
            )
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3987
          )
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3988
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3989
            label: '-'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3990
          )
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3991
         (MenuItem
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3992
            activeHelpKey: drawModeMaskOutsideRectangle
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3993
            enabled: imageHasMaskAndIsNotReadOnlyHolder
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3994
            label: 'Mask Outside Rectangle'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3995
            labelImage: (ResourceRetriever ImageEditor maskOutsideRectangleIcon 'Mask Outside Rectangle')
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3996
            choice: editMode
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3997
            choiceValue: maskOutsideRect
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3998
          )
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3999
         (MenuItem
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4000
            activeHelpKey: drawModeMaskOutsideCircle
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4001
            enabled: imageHasMaskAndIsNotReadOnlyHolder
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4002
            label: 'Mask Outside Circle'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4003
            labelImage: (ResourceRetriever ImageEditor maskOutsideCircleIcon 'Mask Outside Circle')
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4004
            choice: editMode
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4005
            choiceValue: maskOutsideCircle
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4006
          )
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4007
         (MenuItem
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4008
            label: '-'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4009
          )
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4010
         (MenuItem
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4011
            activeHelpKey: drawModeCopy
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4012
            enabled: imageIsLoadedHolder
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4013
            label: 'Copy'
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4014
            labelImage: (ResourceRetriever ImageEditor copyIcon 'Copy')
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4015
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4016
            choiceValue: copy
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4017
          )
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4018
         (MenuItem
3512
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4019
            activeHelpKey: drawModePasteWithMask
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4020
            enabled: imageIsLoadedHolder
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4021
            label: 'Paste with Mask'
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4022
            labelImage: (ResourceRetriever ImageEditor pasteWithMaskIcon 'Paste with Mask')
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4023
            choice: editMode
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4024
            choiceValue: pasteWithMask
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4025
          )
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4026
         (MenuItem
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4027
            activeHelpKey: drawModePaste
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4028
            enabled: imageIsLoadedHolder
3512
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4029
            label: 'Paste Over'
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4030
            labelImage: (ResourceRetriever ImageEditor pasteIcon 'Paste')
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4031
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4032
            choiceValue: paste
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  4033
          )
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4034
         (MenuItem
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4035
            activeHelpKey: drawModePasteUnder
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4036
            enabled: imageIsLoadedHolder
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4037
            label: 'Paste Under'
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4038
            labelImage: (ResourceRetriever ImageEditor pasteUnderIcon 'Paste Under')
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4039
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4040
            choiceValue: pasteUnder
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  4041
          )
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4042
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4043
            label: '-'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4044
          )
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4045
         (MenuItem
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4046
            activeHelpKey: drawModeSpecial
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4047
            enabled: imageIsLoadedHolder
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4048
            label: 'Special'
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  4049
            labelImage: (ResourceRetriever ImageEditor specialRectangleIcon 'Special')
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4050
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4051
            choiceValue: specialOperation
1411
9daf7add7ea3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1406
diff changeset
  4052
          )
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  4053
         )
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  4054
        nil
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  4055
        nil
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4056
      )
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  4057
3512
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4058
    "Modified: / 07-12-2017 / 15:30:46 / cg"
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4059
!
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4060
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4061
previewMenu
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4062
    "This resource specification was automatically generated
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4063
     by the MenuEditor of ST/X."
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4064
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4065
    "Do not manually edit this!! If it is corrupted,
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4066
     the MenuEditor may not be able to read the specification."
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4067
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4068
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4069
    "
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4070
     MenuEditor new openOnClass:ImageEditor andSelector:#previewMenu
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4071
     (Menu new fromLiteralArrayEncoding:(ImageEditor previewMenu)) startUp
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4072
    "
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4073
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4074
    <resource: #menu>
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4075
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4076
    ^ 
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4077
     #(Menu
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4078
        (
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4079
         (MenuItem
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4080
            label: 'TileMode'
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4081
            indication: tileModeHolder
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4082
          )
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4083
         (MenuItem
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4084
            label: '-'
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4085
          )
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4086
         (MenuItem
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4087
            label: 'Background Color'
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4088
            submenu: 
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4089
           (Menu
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4090
              (
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4091
               (MenuItem
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4092
                  label: 'Gray'
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4093
                  choice: previewBackgroundColorHolder
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4094
                )
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4095
               (MenuItem
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4096
                  label: 'Black'
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4097
                  choice: previewBackgroundColorHolder
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4098
                  choiceValue: black
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4099
                )
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4100
               (MenuItem
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4101
                  label: 'White'
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4102
                  choice: previewBackgroundColorHolder
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4103
                  choiceValue: white
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4104
                )
1774
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4105
               (MenuItem
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4106
                  label: '-'
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4107
                )
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4108
               (MenuItem
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4109
                  label: 'Red'
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4110
                  choice: previewBackgroundColorHolder
1774
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4111
                  choiceValue: red
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4112
                )
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4113
               (MenuItem
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4114
                  label: 'Green'
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4115
                  choice: previewBackgroundColorHolder
1774
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4116
                  choiceValue: green
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4117
                )
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4118
               (MenuItem
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4119
                  label: 'Blue'
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4120
                  choice: previewBackgroundColorHolder
1774
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4121
                  choiceValue: blue
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4122
                )
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4123
               )
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4124
              nil
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4125
              nil
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4126
            )
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4127
          )
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4128
         (MenuItem
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4129
            label: '-'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4130
          )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4131
         (MenuItem
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4132
            label: 'Magnification'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4133
            submenu: 
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4134
           (Menu
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4135
              (
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4136
               (MenuItem
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4137
                  label: '0.1'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4138
                  choice: previewMagnificationHolder
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4139
                  choiceValue: 0.1
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4140
                )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4141
               (MenuItem
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4142
                  label: '0.25'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4143
                  choice: previewMagnificationHolder
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4144
                  choiceValue: 0.25
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4145
                )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4146
               (MenuItem
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4147
                  label: '0.5'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4148
                  choice: previewMagnificationHolder
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4149
                  choiceValue: 0.5
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4150
                )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4151
               (MenuItem
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4152
                  label: '1'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4153
                  choice: previewMagnificationHolder
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4154
                  choiceValue: 1
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4155
                )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4156
               (MenuItem
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4157
                  label: '2'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4158
                  choice: previewMagnificationHolder
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4159
                  choiceValue: 2
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4160
                )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4161
               (MenuItem
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4162
                  label: '4'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4163
                  choice: previewMagnificationHolder
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4164
                  choiceValue: 4
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4165
                )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4166
               (MenuItem
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4167
                  label: '-'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4168
                )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4169
               (MenuItem
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4170
                  label: 'Choose...'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4171
                  itemValue: changePreviewImageMagnification
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4172
                )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4173
               )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4174
              nil
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4175
              nil
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4176
            )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4177
          )
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4178
         )
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4179
        nil
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4180
        nil
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4181
      )
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4182
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4183
    "Modified: / 10-09-2017 / 14:54:41 / cg"
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4184
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4185
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4186
toolsMenuToolbar
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4187
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4188
     by the MenuEditor of ST/X."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4189
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4190
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4191
     the MenuEditor may not be able to read the specification."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4192
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4193
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4194
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4195
     MenuEditor new openOnClass:ImageEditor andSelector:#toolsMenuToolbar
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4196
     (Menu new fromLiteralArrayEncoding:(ImageEditor toolsMenuToolbar)) startUp
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4197
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4198
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4199
    <resource: #menu>
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4200
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4201
    ^ 
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4202
     #(Menu
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4203
        (
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4204
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4205
            activeHelpKey: drawModePoint
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  4206
            enabled: canDrawPointsHolder
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4207
            label: 'Point'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4208
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4209
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4210
            labelImage: (ResourceRetriever ImageEditor pointIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4211
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4212
            choiceValue: point
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4213
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4214
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4215
            activeHelpKey: drawModeSpray
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  4216
            enabled: canSprayHolder
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4217
            label: 'Spray'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4218
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4219
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4220
            labelImage: (ResourceRetriever ImageEditor sprayIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4221
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4222
            choiceValue: spray
2375
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  4223
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4224
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4225
            activeHelpKey: drawModeBox
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  4226
            enabled: canDrawRectsHolder
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4227
            label: 'Rect'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4228
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4229
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4230
            labelImage: (ResourceRetriever ImageEditor rectIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4231
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4232
            choiceValue: box
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4233
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4234
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4235
            activeHelpKey: drawModeFilledBox
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  4236
            enabled: canFillRectsHolder
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4237
            label: 'FillRect'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4238
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4239
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4240
            labelImage: (ResourceRetriever ImageEditor fillRectIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4241
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4242
            choiceValue: filledBox
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4243
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4244
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4245
            activeHelpKey: drawModeCircle
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  4246
            enabled: canDrawCirclesHolder
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4247
            label: 'Circle'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4248
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4249
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4250
            labelImage: (ResourceRetriever ImageEditor circleIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4251
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4252
            choiceValue: circle
2375
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  4253
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4254
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4255
            activeHelpKey: drawModeFill
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  4256
            enabled: canFloodFillHolder
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4257
            label: 'Fill'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4258
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4259
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4260
            labelImage: (ResourceRetriever ImageEditor fillIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4261
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4262
            choiceValue: fill
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4263
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4264
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4265
            activeHelpKey: drawModeCopy
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4266
            enabled: imageIsLoadedHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4267
            label: 'Copy'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4268
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4269
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4270
            labelImage: (ResourceRetriever ImageEditor copyIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4271
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4272
            choiceValue: copy
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4273
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4274
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4275
            activeHelpKey: drawModePasteWithMask
3377
6177e2e703fb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3376
diff changeset
  4276
            enabled: imageIsLoadedAndNotReadonlyHolder
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4277
            label: 'Paste With Mask'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4278
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4279
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4280
            labelImage: (ResourceRetriever ImageEditor pasteWithMaskIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4281
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4282
            choiceValue: pasteWithMask
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4283
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4284
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4285
            activeHelpKey: drawModePaste
3377
6177e2e703fb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3376
diff changeset
  4286
            enabled: imageIsLoadedAndNotReadonlyHolder
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4287
            label: 'Paste'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4288
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4289
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4290
            labelImage: (ResourceRetriever ImageEditor pasteIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4291
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4292
            choiceValue: paste
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4293
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4294
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4295
            activeHelpKey: drawModePasteUnder
3377
6177e2e703fb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3376
diff changeset
  4296
            enabled: imageIsLoadedAndNotReadonlyHolder
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4297
            label: 'Paste Under'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4298
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4299
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4300
            labelImage: (ResourceRetriever ImageEditor pasteUnderIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4301
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4302
            choiceValue: pasteUnder
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4303
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4304
         (MenuItem
3464
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4305
            activeHelpKey: drawModeCropSubImage 
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4306
            enabled: imageIsLoadedHolder
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4307
            label: 'Crop SubImage'
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4308
            translateLabel: true
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4309
            isButton: true
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4310
            labelImage: (ResourceRetriever ImageEditor cropSubImageIcon)
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4311
            choice: editMode
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4312
            choiceValue: cropSubImage
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4313
          )
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4314
         (MenuItem
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4315
            activeHelpKey: drawModeSpecial
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4316
            enabled: imageIsLoadedHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4317
            label: 'Special'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4318
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4319
            isButton: true
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  4320
            labelImage: (ResourceRetriever ImageEditor specialRectangleIcon)
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4321
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4322
            choiceValue: specialOperation
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4323
          )
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4324
         )
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4325
        nil
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4326
        nil
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4327
      )
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  4328
3464
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4329
    "Modified: / 24-08-2017 / 20:53:02 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4330
! !
228524287573 intitial checkin
tz
parents:
diff changeset
  4331
1842
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4332
!ImageEditor class methodsFor:'tableColumns specs'!
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4333
1900
41ba86fb1087 cleanup
Claus Gittinger <cg@exept.de>
parents: 1899
diff changeset
  4334
colorTableColumns
1842
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4335
    "This resource specification was automatically generated
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4336
     by the DataSetBuilder of ST/X."
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4337
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4338
    "Do not manually edit this!! If it is corrupted,
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4339
     the DataSetBuilder may not be able to read the specification."
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4340
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4341
    "
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  4342
     DataSetBuilder new openOnClass:ImageEditor andSelector:#colorTableColumns
1842
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4343
    "
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4344
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4345
    <resource: #tableColumns>
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4346
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4347
    ^#(
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4348
      (DataSetColumnSpec
2174
7beca4d9c93a color-double-click
Claus Gittinger <cg@exept.de>
parents: 2155
diff changeset
  4349
         activeHelpKey: ''
1842
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4350
         labelButtonType: Button
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4351
         rendererType: rowSelector
2712
cddda688a9f2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2711
diff changeset
  4352
         backgroundSelector: theColorItself:
cddda688a9f2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2711
diff changeset
  4353
         selectedBackgroundSelector: theColorItself:
1842
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4354
         isResizeable: false
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4355
       )
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4356
      (DataSetColumnSpec
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4357
         label: 'R'
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4358
         labelAlignment: left
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4359
         labelButtonType: Button
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4360
         columnAlignment: right
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4361
         editorType: InputField
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4362
         type: number
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4363
         model: redFromColor:
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4364
         writeSelector: redAtColor:put:
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4365
         selectSelector: canSelectRedInColor:
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4366
       )
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4367
      (DataSetColumnSpec
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4368
         label: 'G'
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4369
         labelAlignment: left
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4370
         labelButtonType: Button
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4371
         columnAlignment: right
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4372
         editorType: InputField
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4373
         type: number
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4374
         model: greenFromColor:
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4375
         writeSelector: greenAtColor:put:
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4376
         selectSelector: canSelectGreenInColor:
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4377
       )
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4378
      (DataSetColumnSpec
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4379
         label: 'B'
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4380
         labelAlignment: left
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4381
         labelButtonType: Button
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4382
         columnAlignment: right
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4383
         editorType: InputField
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4384
         type: number
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4385
         model: blueFromColor:
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4386
         writeSelector: blueAtColor:put:
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4387
         selectSelector: canSelectBlueInColor:
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4388
       )
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4389
      )
2174
7beca4d9c93a color-double-click
Claus Gittinger <cg@exept.de>
parents: 2155
diff changeset
  4390
7beca4d9c93a color-double-click
Claus Gittinger <cg@exept.de>
parents: 2155
diff changeset
  4391
    "Modified: / 22-07-2007 / 13:21:57 / cg"
1842
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4392
! !
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4393
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4394
!ImageEditor methodsFor:'accessing'!
228524287573 intitial checkin
tz
parents:
diff changeset
  4395
228524287573 intitial checkin
tz
parents:
diff changeset
  4396
image
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  4397
    "returns the current editing image"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4398
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  4399
    ^ imageEditView image
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4400
!
228524287573 intitial checkin
tz
parents:
diff changeset
  4401
228524287573 intitial checkin
tz
parents:
diff changeset
  4402
postOpenAction: anAction
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  4403
   "sets an action which is evaluated after opening"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4404
228524287573 intitial checkin
tz
parents:
diff changeset
  4405
    postOpenAction := anAction
1381
30fedb56e7db *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1380
diff changeset
  4406
!
30fedb56e7db *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1380
diff changeset
  4407
30fedb56e7db *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1380
diff changeset
  4408
resourceClass:aClass
30fedb56e7db *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1380
diff changeset
  4409
    imageEditView resourceClass:aClass
3375
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  4410
!
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  4411
3379
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  4412
savedFile
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  4413
    "if user did a save to file, return the filename.
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  4414
     Otherwise, this returns nil"
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  4415
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  4416
    ^ savedFile
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  4417
!
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  4418
3375
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  4419
savedImage
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  4420
    "if user did a save, return what was saved last.
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  4421
     Otherwise, this returns nil"
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  4422
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  4423
    ^ savedImage
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4424
! !
228524287573 intitial checkin
tz
parents:
diff changeset
  4425
2767
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4426
!ImageEditor methodsFor:'accessing-behavior'!
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4427
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4428
allowedToChangeImageDimension
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4429
    "used to edit an existing image's contents only (Expecco)"
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4430
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4431
    ^ self allowedToChangeImageDimensionAndDepth
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4432
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4433
    "Created: / 16-02-2017 / 01:59:21 / cg"
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4434
!
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4435
2767
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4436
allowedToChangeImageDimensionAndDepth
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4437
    "used to edit an existing image's contents only (Expecco)"
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4438
3378
7225434f9d46 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3377
diff changeset
  4439
    self readOnly ifTrue:[^ false].
2767
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4440
    ^ allowedToChangeImageDimensionAndDepth ? true
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4441
!
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4442
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4443
allowedToChangeImageDimensionAndDepth:aBoolean
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4444
    "used to edit an existing image's contents only (Expecco)"
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4445
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4446
    allowedToChangeImageDimensionAndDepth := aBoolean
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4447
! !
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4448
1398
284781677ae1 category changes
Claus Gittinger <cg@exept.de>
parents: 1393
diff changeset
  4449
!ImageEditor methodsFor:'accessing-views'!
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4450
915
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4451
colorDataSetView
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4452
    "returns the view of the colormap"
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4453
1597
b670ad8c30e1 builder componentAt: -> self componentAt:
Claus Gittinger <cg@exept.de>
parents: 1583
diff changeset
  4454
    ^(self componentAt: #colorDataSetView)
915
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4455
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4456
    "Created: / 26.7.1998 / 12:02:14 / cg"
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4457
!
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4458
487
6c336c183330 info bar as subSpec to class ToolApplicationModel moved
tz
parents: 475
diff changeset
  4459
coordLabel
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  4460
    "returns the view the coord label"
487
6c336c183330 info bar as subSpec to class ToolApplicationModel moved
tz
parents: 475
diff changeset
  4461
1597
b670ad8c30e1 builder componentAt: -> self componentAt:
Claus Gittinger <cg@exept.de>
parents: 1583
diff changeset
  4462
    ^self componentAt: #coordLabel
487
6c336c183330 info bar as subSpec to class ToolApplicationModel moved
tz
parents: 475
diff changeset
  4463
!
6c336c183330 info bar as subSpec to class ToolApplicationModel moved
tz
parents: 475
diff changeset
  4464
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4465
imageEditView
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  4466
    "returns the editor view of the image"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4467
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  4468
    imageEditView isNil ifTrue:[
1597
b670ad8c30e1 builder componentAt: -> self componentAt:
Claus Gittinger <cg@exept.de>
parents: 1583
diff changeset
  4469
        imageEditView := (self componentAt: #imageEditView) scrolledView.
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  4470
        imageEditView addDependent:self.
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  4471
    ].
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  4472
    ^ imageEditView
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  4473
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  4474
    "Modified: / 10.2.2000 / 23:19:20 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4475
!
228524287573 intitial checkin
tz
parents:
diff changeset
  4476
228524287573 intitial checkin
tz
parents:
diff changeset
  4477
imagePreView
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  4478
    "returns the preview of the image"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4479
2339
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  4480
    |imagePreViewSubViews|
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  4481
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  4482
    imagePreViewSubViews := (self componentAt: #imagePreView) subViews.
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  4483
2043
a816ef2ce516 #imagePreView
sr
parents: 2042
diff changeset
  4484
    "subViews is an empty array at closing image Editor"
2339
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  4485
    imagePreViewSubViews isEmptyOrNil ifTrue:[
2043
a816ef2ce516 #imagePreView
sr
parents: 2042
diff changeset
  4486
        ^ nil
a816ef2ce516 #imagePreView
sr
parents: 2042
diff changeset
  4487
    ].
a816ef2ce516 #imagePreView
sr
parents: 2042
diff changeset
  4488
2339
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  4489
    ^ imagePreViewSubViews first 
475
0d5a50fe59f4 default value of info label set
tz
parents: 468
diff changeset
  4490
! !
0d5a50fe59f4 default value of info label set
tz
parents: 468
diff changeset
  4491
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4492
!ImageEditor methodsFor:'actions'!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4493
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4494
applyCropAction
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4495
    self cropLeft:(self cropLeftAmount value) right:(self cropRightAmount value) 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4496
         top:(self cropTopAmount value) bottom:(self cropBottomAmount value)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4497
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4498
    "Created: / 17-02-2017 / 14:34:35 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4499
    "Modified: / 19-02-2017 / 15:11:41 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4500
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4501
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4502
cropBottomNow
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4503
    self cropLeft:0 right:0 top:0 bottom:(self cropBottomAmount value)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4504
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4505
    "Created: / 19-02-2017 / 15:07:36 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4506
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4507
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4508
cropLeft:left right:right top:top bottom:bottom
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4509
    |img|
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4510
    
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4511
    img := imageEditView image.
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4512
    img isNil ifTrue:[^ self].
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4513
    
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4514
    true "firstChange" ifTrue:[
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4515
        imageEditView makeUndo.
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4516
        "/ firstChange := false.
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4517
    ].
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4518
    imageEditView
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4519
        makeSubImageX:left y:top 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4520
        width:(img width - left - right)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4521
        height:(img height - top - bottom).
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4522
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4523
    self updateImagePreView.
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4524
    self updateInfoLabel
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4525
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4526
    "Created: / 19-02-2017 / 15:07:58 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4527
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4528
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4529
cropLeftNow
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4530
    self cropLeft:(self cropLeftAmount value) right:0 top:0 bottom:0
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4531
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4532
    "Created: / 19-02-2017 / 15:08:06 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4533
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4534
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4535
cropRightNow
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4536
    self cropLeft:0 right:(self cropRightAmount value) top:0 bottom:0
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4537
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4538
    "Created: / 19-02-2017 / 15:08:12 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4539
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4540
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4541
cropTopNow
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4542
    self cropLeft:0 right:0 top:(self cropTopAmount value) bottom:0
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4543
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4544
    "Created: / 19-02-2017 / 15:08:29 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4545
! !
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4546
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4547
!ImageEditor methodsFor:'aspects'!
228524287573 intitial checkin
tz
parents:
diff changeset
  4548
928
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  4549
activityInfoHolder
1987
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  4550
    ^ self infoLabelHolder
928
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  4551
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  4552
    "Modified: / 29.7.1998 / 18:49:03 / cg"
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  4553
!
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  4554
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4555
alphaHolder
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4556
    |holder|
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4557
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4558
    (holder := builder bindingAt:#alphaHolder) isNil ifTrue:[
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4559
        builder aspectAt:#alphaHolder put:(holder := 100 asValue).
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4560
        holder onChangeEvaluate:[ imageEditView drawingAlpha:holder value ].
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4561
    ].
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4562
    ^ holder
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4563
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4564
    "Created: / 05-09-2017 / 00:38:14 / cg"
3488
e9655ba452c7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3487
diff changeset
  4565
    "Modified: / 05-09-2017 / 10:47:01 / cg"
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4566
!
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4567
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4568
alphaText
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4569
    ^ 'alpha:'
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4570
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4571
    "Created: / 05-09-2017 / 00:32:55 / cg"
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4572
!
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4573
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4574
alphaVisibleHolder
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4575
    |holder|
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4576
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4577
    (holder := builder bindingAt:#alphaVisibleHolder) isNil ifTrue:[
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4578
        builder aspectAt:#alphaVisibleHolder put:(holder := false asValue).
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4579
    ].
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4580
    ^ holder
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4581
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4582
    "Created: / 05-09-2017 / 00:35:36 / cg"
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4583
!
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4584
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4585
canAddColorToColormap
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4586
    |img|
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4587
    
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4588
    img := self image.
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4589
    img isNil ifTrue:[^ false].
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4590
    img photometric == #blackIs0 ifTrue:[^ false].
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4591
    img photometric == #whiteIs0 ifTrue:[^ false].
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4592
    ^ true
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4593
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4594
    "Created: / 31-08-2017 / 18:32:27 / cg"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4595
!
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4596
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4597
canAddColorToColormapHolder
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4598
    ^ [self canAddColorToColormap]
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4599
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4600
    "Created: / 31-08-2017 / 18:32:40 / cg"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4601
!
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4602
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4603
canChangeColorInColormap
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4604
    |img|
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4605
    
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4606
    img := self image.
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4607
    img isNil ifTrue:[^ false].
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4608
    img photometric == #palette ifFalse:[^ false].
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4609
    ^ true
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4610
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4611
    "Created: / 31-08-2017 / 18:34:12 / cg"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4612
!
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4613
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4614
canChangeColorInColormapHolder
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4615
    ^ [self canChangeColorInColormap]
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4616
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4617
    "Created: / 31-08-2017 / 18:34:18 / cg"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4618
!
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4619
3378
7225434f9d46 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3377
diff changeset
  4620
canResizeImage
7225434f9d46 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3377
diff changeset
  4621
    ^ self imageIsLoadedAndNotReadonlyHolder
7225434f9d46 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3377
diff changeset
  4622
!
7225434f9d46 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3377
diff changeset
  4623
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4624
colorBoxVisibleHolder
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4625
    |holder|
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4626
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4627
    (holder := builder bindingAt:#colorBoxVisibleHolder) isNil ifTrue:[
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4628
        builder aspectAt:#colorBoxVisibleHolder put:(holder := true asValue).
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4629
    ].
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4630
    ^ holder
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4631
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4632
    "Created: / 03-02-2017 / 11:20:21 / cg"
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4633
!
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4634
915
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4635
colorColumnAdaptor
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4636
    ^ self
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4637
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4638
    "Created: / 26.7.1998 / 12:17:03 / cg"
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4639
!
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4640
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4641
colorCropTabLabelList
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4642
    ^ resources array:(self colorCropTabSpecList collect:#first)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4643
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4644
    "Created: / 19-02-2017 / 14:58:25 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4645
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4646
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4647
colorCropTabSelectionIndexHolder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4648
    |holder|
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4649
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4650
    (holder := builder bindingAt:#colorCropTabSelectionIndexHolder) isNil ifTrue:[
3415
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4651
        builder aspectAt:#colorCropTabSelectionIndexHolder put:(holder := self defaultEditTabIndex asValue).
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4652
        holder onChangeSend:#colorCropTabSelectionIndexChanged to:self.
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4653
    ].
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4654
    ^ holder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4655
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4656
    "Created: / 19-02-2017 / 14:59:11 / cg"
3415
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4657
    "Modified: / 19-02-2017 / 23:33:39 / cg"
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4658
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4659
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4660
colorCropTabSpecList
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4661
    ^ #( 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4662
        ('Colors' colors)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4663
        ('Crop'   crop)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4664
        ('Fill'   fill)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4665
    )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4666
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4667
    "Created: / 19-02-2017 / 15:34:33 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4668
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4669
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4670
colorCropTabSymbolList
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4671
    ^ self colorCropTabSpecList collect:#second
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4672
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4673
    "Created: / 19-02-2017 / 15:34:54 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4674
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4675
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4676
cropBottomAmount
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4677
    ^ builder valueAspectFor:'cropBottomAmount' initialValue:1
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4678
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4679
    "Created: / 19-02-2017 / 15:09:09 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4680
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4681
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4682
cropBoxIsDialog
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4683
    ^ false
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4684
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4685
    "Created: / 03-02-2017 / 11:23:50 / cg"
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4686
    "Modified: / 19-02-2017 / 15:24:07 / cg"
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4687
!
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4688
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4689
cropBoxIsNotDialog
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4690
    ^ self cropBoxIsDialog not
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4691
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4692
    "Created: / 17-02-2017 / 14:38:04 / cg"
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4693
!
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4694
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4695
cropBoxVisibleHolder
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4696
    |holder|
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4697
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4698
    (holder := builder bindingAt:#cropBoxVisibleHolder) isNil ifTrue:[
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4699
        builder aspectAt:#cropBoxVisibleHolder put:(holder := false asValue).
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4700
    ].
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4701
    ^ holder
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4702
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4703
    "Created: / 03-02-2017 / 11:20:13 / cg"
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4704
!
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4705
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4706
cropLeftAmount
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4707
    ^ builder valueAspectFor:'cropLeftAmount' initialValue:1
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4708
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4709
    "Created: / 19-02-2017 / 15:09:23 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4710
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4711
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4712
cropRightAmount
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4713
    ^ builder valueAspectFor:'cropRightAmount' initialValue:1
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4714
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4715
    "Created: / 19-02-2017 / 15:09:29 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4716
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4717
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4718
cropTopAmount
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4719
    ^ builder valueAspectFor:'cropTopAmount' initialValue:1
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4720
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4721
    "Created: / 19-02-2017 / 15:09:35 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4722
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4723
3415
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4724
defaultEditTabIndex
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4725
    "the default tab to show in the color/crop/fill tablist"
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4726
    
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4727
    ^ 1
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4728
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4729
    "Created: / 19-02-2017 / 23:34:12 / cg"
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4730
!
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4731
3421
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4732
drawingColor1Holder
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4733
    "returns a valueHolder for the current selected mouse-button-1 color"
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4734
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4735
    |holder|
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4736
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4737
    (holder := builder bindingAt:#drawingColor1Holder) isNil ifTrue:[
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4738
        builder aspectAt:#drawingColor1Holder put:(holder := IndirectValue new)
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4739
    ].
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4740
    ^ holder
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4741
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4742
    "Created: / 23-02-2017 / 10:18:25 / cg"
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4743
!
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4744
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4745
drawingColor2Holder
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4746
    "returns a valueHolder for the current selected mouse-button-2 color"
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4747
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4748
    |holder|
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4749
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4750
    (holder := builder bindingAt:#drawingColor2Holder) isNil ifTrue:[
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4751
        builder aspectAt:#drawingColor2Holder put:(holder := IndirectValue new)
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4752
    ].
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4753
    ^ holder
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4754
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4755
    "Created: / 23-02-2017 / 10:18:33 / cg"
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4756
!
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4757
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4758
floodFillBoxVisibleHolder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4759
    |holder|
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4760
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4761
    (holder := builder bindingAt:#floodFillBoxVisibleHolder) isNil ifTrue:[
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4762
        builder aspectAt:#floodFillBoxVisibleHolder put:(holder := false asValue).
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4763
    ].
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4764
    ^ holder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4765
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4766
    "Created: / 19-02-2017 / 15:28:40 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4767
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4768
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4769
floodFillMaxHueError
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4770
    |holder|
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4771
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4772
    (holder := builder bindingAt:#floodFillMaxHueError) isNil ifTrue:[
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4773
        builder aspectAt:#floodFillMaxHueError put:(holder := 0 asValue).
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4774
        holder onChangeEvaluate:[ imageEditView floodFillMaxHueError:holder value ].
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4775
    ].
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4776
    ^ holder
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4777
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4778
    "Created: / 17-02-2017 / 15:19:17 / cg"
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4779
!
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4780
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4781
floodFillMaxLightError
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4782
    |holder|
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4783
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4784
    (holder := builder bindingAt:#floodFillMaxLightError) isNil ifTrue:[
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4785
        builder aspectAt:#floodFillMaxLightError put:(holder := 0 asValue).
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4786
        holder onChangeEvaluate:[ imageEditView floodFillMaxLightError:holder value ].
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4787
    ].
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4788
    ^ holder
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4789
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4790
    "Created: / 17-02-2017 / 15:19:11 / cg"
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4791
!
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4792
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4793
hasClassAndSelectorDefinedHolder
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  4794
    ^ [
1965
1d2b7893ae89 some code cleanup (resourceClass was actually its name)
Claus Gittinger <cg@exept.de>
parents: 1962
diff changeset
  4795
        |cls|
1d2b7893ae89 some code cleanup (resourceClass was actually its name)
Claus Gittinger <cg@exept.de>
parents: 1962
diff changeset
  4796
1d2b7893ae89 some code cleanup (resourceClass was actually its name)
Claus Gittinger <cg@exept.de>
parents: 1962
diff changeset
  4797
        (cls := imageEditView resourceClass) notNil
1d2b7893ae89 some code cleanup (resourceClass was actually its name)
Claus Gittinger <cg@exept.de>
parents: 1962
diff changeset
  4798
        and:[imageEditView resourceSelector notNil]
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  4799
      ]
933
f090206aadff disable some menu items if no class/selector is defined
Claus Gittinger <cg@exept.de>
parents: 932
diff changeset
  4800
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4801
    "Created: / 04-07-2010 / 10:11:10 / cg"
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4802
!
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4803
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4804
hasClassDefinedHolder
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  4805
    ^ [
1965
1d2b7893ae89 some code cleanup (resourceClass was actually its name)
Claus Gittinger <cg@exept.de>
parents: 1962
diff changeset
  4806
        imageEditView resourceClass notNil
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  4807
      ]
933
f090206aadff disable some menu items if no class/selector is defined
Claus Gittinger <cg@exept.de>
parents: 932
diff changeset
  4808
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4809
    "Created: / 04-07-2010 / 10:11:47 / cg"
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4810
!
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4811
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4812
hasColorSelectedHolder
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4813
    ^ [ self selectedColors value notEmptyOrNil "self selectedColorIndexOrNil notNil" ]
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4814
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4815
    "Created: / 04-07-2010 / 10:12:22 / cg"
2651
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  4816
!
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  4817
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  4818
hasColormap
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4819
    "true if a colormap is shown (might be a drwing map, not the real map)"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4820
    
3421
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4821
    |img|
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4822
    
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4823
    ^ (img := self image) notNil 
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4824
        and:[img colorMap notNil or:[ drawingColormap notNil or:[ self listOfColors notEmptyOrNil ]]]
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4825
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4826
    "Created: / 30-09-1998 / 23:53:55 / cg"
3421
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4827
    "Modified: / 23-02-2017 / 09:57:45 / cg"
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4828
    "Modified (comment): / 31-08-2017 / 18:36:08 / cg"
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  4829
!
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  4830
2651
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  4831
hasColormapAndColorSelected
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  4832
    ^ [ self hasColormap and:[self hasColorSelectedHolder value]]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  4833
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  4834
    "Modified: / 31-08-2017 / 14:08:20 / cg"
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4835
!
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4836
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4837
hasColormapAndSingleColorSelected
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4838
    ^ self hasColormapHolder value and:[self hasSingleColorSelectedHolder value]
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4839
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4840
    "Modified: / 31-08-2017 / 18:44:49 / cg"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4841
!
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4842
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4843
hasColormapAndSingleColorSelectedHolder
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4844
    ^ [ self hasColormapAndSingleColorSelected value ]
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4845
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4846
    "Created: / 31-08-2017 / 18:44:36 / cg"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4847
!
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4848
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4849
hasColormapAndSingleWritableColorSelectedHolder
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4850
    ^ [ self hasColormapAndSingleColorSelected and:[self canChangeColorInColormap ]]
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4851
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4852
    "Created: / 31-08-2017 / 18:42:46 / cg"
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4853
!
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4854
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4855
hasColormapHolder
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4856
    "true if a colormap is shown (might be a drwing map, not the real map)"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4857
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4858
    ^ [self hasColormap]
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4859
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4860
    "Created: / 04-07-2010 / 10:13:05 / cg"
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4861
    "Modified (comment): / 31-08-2017 / 18:36:47 / cg"
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4862
!
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4863
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4864
hasSingleColorSelectedHolder
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4865
    ^ [ self selectedColors value size == 1 "self selectedColorIndexOrNil notNil" ]
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4866
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4867
    "Created: / 04-07-2010 / 10:12:22 / cg"
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4868
!
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4869
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  4870
hasWritableColorSelectedHolder
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  4871
    ^ [ self hasSingleColorSelectedHolder value and:[self canChangeColorInColormap ]]
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  4872
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  4873
    "Created: / 08-10-2017 / 14:45:11 / cg"
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  4874
!
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  4875
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4876
imageHasColormap
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4877
    "true if a colormap is shown (might be a drwing map, not the real map)"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4878
    
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4879
    |img|
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4880
    
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4881
    ^ (img := self image) notNil 
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4882
        and:[img colorMap notNil ]
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4883
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4884
    "Created: / 31-08-2017 / 18:36:25 / cg"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4885
!
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4886
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4887
imageHasColormapHolder
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4888
    ^ [self imageHasColormap]
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4889
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4890
    "Created: / 31-08-2017 / 18:36:42 / cg"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4891
!
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4892
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4893
imageHasImageSequence
3080
918f79c8b30d class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3066
diff changeset
  4894
    |img|
918f79c8b30d class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3066
diff changeset
  4895
918f79c8b30d class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3066
diff changeset
  4896
    ^ (img := self image) notNil and:[img imageSequence notNil]
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4897
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4898
    "Created: / 21-10-2010 / 14:35:45 / cg"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4899
!
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4900
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4901
imageHasImageSequenceHolder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4902
    |holder|
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4903
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4904
    (holder := builder bindingAt:#imageHasImageSequenceHolder) isNil ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4905
        builder aspectAt:#imageHasImageSequenceHolder put:(holder := false asValue).
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4906
        holder value:(self imageHasImageSequence).    
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4907
    ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4908
    ^ holder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4909
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4910
    "Modified: / 21-10-2010 / 14:36:57 / cg"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4911
!
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4912
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4913
imageHasMaskAndIsNotReadOnlyHolder
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4914
    "returns whether an image is loaded and editable as value holder"
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4915
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4916
    ^ BlockValue
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4917
        with:[:loaded | loaded and:[ self image mask notNil and:[self readOnly not] ]]
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4918
        argument:(self imageIsLoadedHolder)
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4919
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4920
    "Created: / 16-02-2017 / 12:17:25 / cg"
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4921
!
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4922
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4923
imageHasNextImage
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4924
    ^ self imageHasImageSequence and:[ (imageSeqNr ? 1) < self image imageSequence size ]
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4925
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4926
    "Created: / 21-10-2010 / 14:37:10 / cg"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4927
!
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4928
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4929
imageHasNextImageHolder
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4930
    |holder|
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4931
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4932
    (holder := builder bindingAt:#imageHasNextImageHolder) isNil ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4933
        builder aspectAt:#imageHasNextImageHolder put:(holder := false asValue).
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4934
        holder value:(self imageHasNextImage).    
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4935
    ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4936
    ^ holder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4937
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4938
    "Modified: / 21-10-2010 / 14:37:40 / cg"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4939
!
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4940
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4941
imageHasPreviousImage
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4942
    ^ self imageHasImageSequence and:[ (imageSeqNr ? 1) > 1 ]
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4943
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4944
    "Created: / 21-10-2010 / 14:37:21 / cg"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4945
!
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4946
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4947
imageHasPreviousImageHolder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4948
    |holder|
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4949
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4950
    (holder := builder bindingAt:#imageHasPreviousImageHolder) isNil ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4951
        builder aspectAt:#imageHasPreviousImageHolder put:(holder := false asValue).
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4952
        holder value:(self imageHasPreviousImage).    
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4953
    ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4954
    ^ holder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4955
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4956
    "Modified: / 21-10-2010 / 14:37:48 / cg"
1380
9787c42843c2 allow display and extract from image sequences (gif anims)
Claus Gittinger <cg@exept.de>
parents: 1377
diff changeset
  4957
!
9787c42843c2 allow display and extract from image sequences (gif anims)
Claus Gittinger <cg@exept.de>
parents: 1377
diff changeset
  4958
928
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  4959
imageInfoHolder
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  4960
    |holder|
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4961
928
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  4962
    (holder := builder bindingAt:#imageInfoHolder) isNil ifTrue:[
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  4963
        builder aspectAt:#imageInfoHolder put:(holder :=  '' asValue).
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  4964
    ].
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  4965
    ^ holder
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  4966
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4967
    "Modified: / 04-07-2010 / 10:15:14 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4968
!
228524287573 intitial checkin
tz
parents:
diff changeset
  4969
228524287573 intitial checkin
tz
parents:
diff changeset
  4970
listOfColors
1896
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  4971
    "returns the list of colors"
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  4972
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  4973
    |list|
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  4974
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  4975
    (list := builder bindingAt:#listOfColors) isNil ifTrue:[
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  4976
        builder aspectAt:#listOfColors put:(list :=  List new).
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  4977
        list addDependent:self.
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4978
    ].
1896
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  4979
    ^ list
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4980
!
228524287573 intitial checkin
tz
parents:
diff changeset
  4981
1987
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  4982
magnificationHolder
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  4983
    "returns current magnification of the image as an AspectAdaptor"
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  4984
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  4985
    |holder|
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  4986
    (holder := builder bindingAt:#valueOfMagnification) isNil ifTrue:[
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  4987
        builder aspectAt:#valueOfMagnification put:(
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  4988
        holder := AspectAdaptor new subject:self; forAspect:#magnification)
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  4989
    ].
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  4990
    ^ holder
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  4991
!
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  4992
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4993
penWidthHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4994
    |holder|
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4995
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4996
    (holder := builder bindingAt:#penWidthHolder) isNil ifTrue:[
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4997
        builder aspectAt:#penWidthHolder put:(holder := imageEditView penWidth asValue).
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4998
        holder onChangeSend:#penWidthHolderChanged to:self.
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4999
    ].
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5000
    ^ holder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5001
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5002
    "Created: / 15-02-2012 / 22:30:58 / cg"
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5003
!
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5004
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  5005
previewBackgroundColorHolder
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5006
    |holder|
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  5007
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5008
    (holder := builder bindingAt:#previewBackgroundColor) isNil ifTrue:[
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5009
        builder aspectAt:#previewBackgroundColor put:(holder := nil asValue).
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5010
        holder addDependent:self.
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5011
    ].
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5012
    ^ holder
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  5013
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  5014
    "Created: / 04-07-2010 / 10:19:34 / cg"
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5015
!
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5016
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5017
previewMagnificationHolder
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5018
    |holder|
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5019
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5020
    (holder := builder bindingAt:#previewMagnificationHolder) isNil ifTrue:[
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5021
        builder aspectAt:#previewMagnificationHolder put:(holder := 1 asValue).
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5022
        holder addDependent:self.
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5023
    ].
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5024
    ^ holder
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5025
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5026
    "Created: / 10-09-2017 / 14:10:07 / cg"
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5027
!
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5028
3377
6177e2e703fb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3376
diff changeset
  5029
readOnly
6177e2e703fb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3376
diff changeset
  5030
    ^ false
6177e2e703fb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3376
diff changeset
  5031
!
6177e2e703fb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3376
diff changeset
  5032
3425
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  5033
saveButtonInToolbarVisibleHolder
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  5034
    ^ false
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  5035
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  5036
    "Created: / 26-02-2017 / 22:58:41 / cg"
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  5037
!
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  5038
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5039
selectedColors
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5040
    "returns a valueHolder for the current set of selected colors."
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5041
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5042
    |holder|
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5043
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5044
    (holder := builder bindingAt:#selectedColors) isNil ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5045
        builder aspectAt:#selectedColors put:(holder := nil asValue).
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5046
        holder onChangeSend:#selectedColorsChanged to:self.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5047
    ].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5048
    ^ holder
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5049
!
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5050
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5051
selectionOfColor
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  5052
    "returns a valueHolder for the current selection of the edit color.
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  5053
     Here, an AspectAdaptor which accesses selectedColorIndex is returned."
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5054
228524287573 intitial checkin
tz
parents:
diff changeset
  5055
    |holder|
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  5056
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5057
    (holder := builder bindingAt:#selectionOfColor) isNil ifTrue:[
228524287573 intitial checkin
tz
parents:
diff changeset
  5058
        builder aspectAt:#selectionOfColor put:(
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  5059
        holder := AspectAdaptor new subject:self; forAspect:#selectedColorIndex ).
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5060
    ].
228524287573 intitial checkin
tz
parents:
diff changeset
  5061
    ^ holder
228524287573 intitial checkin
tz
parents:
diff changeset
  5062
!
228524287573 intitial checkin
tz
parents:
diff changeset
  5063
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5064
spraySpotHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5065
    |holder|
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5066
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5067
    (holder := builder bindingAt:#spraySpotHolder) isNil ifTrue:[
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5068
        builder aspectAt:#spraySpotHolder put:(holder := imageEditView spraySpot asValue).
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5069
        holder onChangeSend:#spraySpotHolderChanged to:self.
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5070
    ].
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5071
    ^ holder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5072
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5073
    "Created: / 15-02-2012 / 22:36:38 / cg"
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5074
!
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5075
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5076
tileModeHolder
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5077
    |holder|
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5078
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5079
    (holder := builder bindingAt:#tileModeHolder) isNil ifTrue:[
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5080
        builder aspectAt:#tileModeHolder put:(holder := false asValue).
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5081
        holder addDependent:self.
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5082
    ].
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5083
    ^ holder
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5084
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5085
    "Modified: / 21-10-2010 / 14:35:24 / cg"
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5086
!
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5087
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5088
valueOfMagnification
2308
60722577a10a Mark obsolete methods
Stefan Vogel <sv@exept.de>
parents: 2272
diff changeset
  5089
    <resource: #obsolete>
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5090
    "returns current magnification of the image as an AspectAdaptor"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5091
1987
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  5092
    self obsoleteMethodWarning:'stupid method name - use #magnificationHolder'.
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  5093
    ^ self magnificationHolder
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5094
! !
228524287573 intitial checkin
tz
parents:
diff changeset
  5095
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5096
!ImageEditor methodsFor:'change & update'!
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5097
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5098
changePreviewImageMagnification
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5099
    |mag|
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5100
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5101
    mag := Dialog request:'Magnification?' initialAnswer:self imagePreView magnificationFactor.
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5102
    mag isEmptyOrNil ifTrue:[^ self].
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5103
    mag := Number readFrom:mag onError:nil.
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5104
    mag isNil ifTrue:[^ self].
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5105
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5106
    self previewMagnificationHolder value:mag
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5107
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5108
    "Created: / 10-09-2017 / 14:52:52 / cg"
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5109
!
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5110
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5111
colorCropTabSelectionIndexChanged
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5112
    |selIndex sym|
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5113
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5114
    selIndex := self colorCropTabSelectionIndexHolder value.
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5115
    sym := self colorCropTabSymbolList at:selIndex.
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5116
    
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5117
    self colorBoxVisibleHolder value:(sym == #colors).
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5118
    self cropBoxVisibleHolder value:(sym == #crop).
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5119
    self floodFillBoxVisibleHolder value:(sym == #fill).
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5120
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5121
    "Created: / 19-02-2017 / 15:01:05 / cg"
3443
b9d9eb4b34f9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3442
diff changeset
  5122
    "Modified: / 21-04-2017 / 16:05:51 / cg"
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5123
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5124
3433
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5125
colorMapModeFromImage:anImage
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5126
    "retrieves the colorMapMode for an image"
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5127
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5128
    |image colorMapModeKey|
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5129
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5130
    image := self image.
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5131
    image isNil ifTrue:[^ nil ].
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5132
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5133
    image mask notNil ifTrue: [             
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5134
        colorMapModeKey := 'masked'.
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5135
    ] ifFalse:[
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5136
        colorMapModeKey := 'depth'.
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5137
    ].
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5138
    colorMapModeKey := (colorMapModeKey , image depth printString) asSymbol.
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5139
    ^ colorMapModeKey
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5140
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5141
    "Created: / 06-04-2017 / 13:19:19 / cg"
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5142
!
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5143
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5144
findColorMapMode
899
43b744c647ba comment grammar
tz
parents: 898
diff changeset
  5145
    "finds the colorMapMode for a new image"
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5146
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5147
    |image newListOfColors colorMapModeKey drawColor1 drawColor2 someOrAllUsedColors|
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  5148
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  5149
    image := self image.
3433
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5150
    (colorMapModeKey := self colorMapModeFromImage:image) isNil ifTrue:[^ self].
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5151
1967
c95484b7da49 some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1966
diff changeset
  5152
    self colorMapMode setValue:colorMapModeKey.
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5153
3359
258a64461215 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3357
diff changeset
  5154
    image photometric == #palette ifTrue:[
258a64461215 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3357
diff changeset
  5155
        image colorMap isNil ifTrue:[
258a64461215 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3357
diff changeset
  5156
            image depth > 16 ifTrue:[
258a64461215 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3357
diff changeset
  5157
                image photometric:#rgb
258a64461215 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3357
diff changeset
  5158
            ].
258a64461215 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3357
diff changeset
  5159
        ].
258a64461215 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3357
diff changeset
  5160
    ].
1928
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5161
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5162
    image depth > 12 ifTrue:[
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5163
        newListOfColors := OrderedCollection new.
2870
0f130285be97 changed:
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  5164
        (image depth > 16 or:[image colorMap isEmptyOrNil]) ifTrue:[
1927
c5068006116d colors of deep images
Claus Gittinger <cg@exept.de>
parents: 1926
diff changeset
  5165
            someOrAllUsedColors := image usedColorsMax:10000.
2054
56352366d94a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2044
diff changeset
  5166
            someOrAllUsedColors notNil ifTrue:[
56352366d94a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2044
diff changeset
  5167
                someOrAllUsedColors := someOrAllUsedColors asArray.
56352366d94a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2044
diff changeset
  5168
                someOrAllUsedColors sort:self sortBlockForColors.
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5169
                newListOfColors addAll:someOrAllUsedColors.
2054
56352366d94a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2044
diff changeset
  5170
                "/ listOfColors add:Color black; add:Color white.
3317
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  5171
            ].
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  5172
            image mask notNil ifTrue:[
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  5173
                newListOfColors := (Array with:(Color noColor)),newListOfColors.
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  5174
            ].
1904
46a0b109cb47 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1900
diff changeset
  5175
        ] ifFalse:[
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5176
            newListOfColors addAll:(image colorMap).
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5177
        ].
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5178
    ] ifFalse:[
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5179
        newListOfColors := OrderedCollection withAll:(self listOfColors).
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5180
        newListOfColors isEmpty ifTrue:[   
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5181
            self colorMapMode: colorMapMode value.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5182
            image := self image.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5183
        ].                               
3317
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  5184
        "/ image mask notNil ifTrue:[
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  5185
        "/     newListOfColors := (Array with:(Color noColor)),newListOfColors.
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  5186
        "/ ].
2054
56352366d94a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2044
diff changeset
  5187
    ].  
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5188
    newListOfColors notEmptyOrNil ifTrue:[
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5189
        drawColor1 := newListOfColors at:1.
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5190
        drawColor2 := newListOfColors at:2 ifAbsent:drawColor1.
2054
56352366d94a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2044
diff changeset
  5191
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5192
        self hasTransparentColorInColorList ifTrue: [             
3367
033c21371bea #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 3359
diff changeset
  5193
            (newListOfColors includes:(Color colorId:0)) ifFalse:[
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5194
                newListOfColors addFirst:(Color colorId:0).
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5195
                drawColor1 := newListOfColors at:2. 
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5196
                drawColor2 := newListOfColors at:3 ifAbsent:drawColor1.
2054
56352366d94a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2044
diff changeset
  5197
            ]
56352366d94a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2044
diff changeset
  5198
        ].
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5199
"/        imageEditView drawingColors:(Array with: drawColor1 with: drawColor2).
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5200
"/        self selectionOfColor 
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5201
"/            setValue: 0;
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5202
"/            value: (listOfColors indexOf: imageEditView selectedColor).
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5203
    ].
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5204
    self listOfColors asOrderedCollection ~= newListOfColors ifTrue:[
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5205
        self listOfColors contents:newListOfColors.
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5206
    ].
2870
0f130285be97 changed:
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  5207
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5208
    "Modified: / 05-09-2017 / 09:03:31 / cg"
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5209
!
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5210
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5211
selectedColorsChanged
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  5212
    |colorIndices selectedIndex|
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  5213
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  5214
    (colorIndices := self selectedColors value) size == 1 ifTrue:[        
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  5215
        "/ a single color selected
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  5216
        selectedIndex := colorIndices first
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  5217
    ].    
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  5218
    self selectionOfColor value:selectedIndex
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  5219
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  5220
    "Modified: / 17-02-2017 / 14:40:33 / cg"
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5221
!
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5222
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5223
update:something with:aParameter from:changedObject
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5224
    |clrIndex image imagePreView clr changedColor cMap|
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5225
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5226
    image := self image.
2042
963042f2c474 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2016
diff changeset
  5227
    imagePreView := self imagePreView.
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5228
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5229
    changedObject == self tileModeHolder ifTrue:[
2042
963042f2c474 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2016
diff changeset
  5230
        imagePreView 
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5231
            tileMode:(changedObject value) tileOffset:(image extent);
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5232
            clear; 
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5233
            invalidate.
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5234
        ^ self
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5235
    ].
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5236
    
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  5237
    changedObject == self previewBackgroundColorHolder ifTrue:[
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5238
        clr := changedObject value isNil 
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5239
                    ifTrue:[imageEditView viewBackground]
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5240
                    ifFalse:[Color perform:changedObject value].
2042
963042f2c474 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2016
diff changeset
  5241
        imagePreView 
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5242
            viewBackground:clr;
3493
4396fb652bd7 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3492
diff changeset
  5243
            clear;
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5244
            invalidate.
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5245
        ^ self
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5246
    ].
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5247
    changedObject == self previewMagnificationHolder ifTrue:[
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5248
        imagePreView 
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5249
            magnificationFactor:(self previewMagnificationHolder value);
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5250
            clear; 
3493
4396fb652bd7 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3492
diff changeset
  5251
            invalidate.
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5252
        ^ self.    
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5253
    ].
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5254
    
945
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5255
    changedObject == self listOfColors ifTrue:[
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5256
        something == #at: ifTrue:[
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5257
            "/ colormap entry changed at aParameter
960
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  5258
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  5259
            clrIndex := aParameter.
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5260
            (self hasTransparentColorInColorList) ifTrue:[
960
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  5261
                clrIndex := clrIndex - 1.
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  5262
            ].
1928
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5263
            changedColor := changedObject at:aParameter.
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5264
            cMap := image colorMap.
3407
2e0024e012e9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3405
diff changeset
  5265
            (cMap notNil and:[cMap isFixedPalette not]) ifTrue:[
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5266
                image colorMap at:clrIndex put:changedColor.
1928
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5267
                self colorMapChanged.
3430
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5268
            ] ifFalse:[
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5269
                drawingColormap notNil ifTrue:[
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5270
                    drawingColormap size < clrIndex ifTrue:[
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5271
                        |newDrawingColormap|
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5272
                        
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5273
                        newDrawingColormap := drawingColormap species new:clrIndex.
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5274
                        newDrawingColormap replaceFrom:1 with:drawingColormap.
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5275
                        drawingColormap := newDrawingColormap.
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5276
                    ].    
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5277
                    drawingColormap at:clrIndex put:changedColor.
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5278
                ].
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5279
            ].    
945
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5280
            ^ self
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5281
        ].
1896
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  5282
        ^ self
945
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5283
    ].
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  5284
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  5285
    changedObject == imageEditView undoImages ifTrue:[
1987
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  5286
        self canUndoHolder value:(changedObject notEmpty).
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  5287
        ^ self.
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  5288
    ].
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  5289
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5290
    changedObject == imageEditView ifTrue:[
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5291
        something == #imageColors ifTrue:[
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5292
            self updateListOfColorsAndColormapMode.
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5293
            ^ self.
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5294
        ].
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5295
        something == #image ifTrue:[
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5296
            self updateAfterImageChange.
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5297
            imagePreView image:image scroll:false.
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5298
            self updateListOfColorsAndColormapMode.
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5299
            self tileModeHolder value ifTrue:[
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5300
                imagePreView tileMode:true tileOffset:(image extent).
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5301
            ].
3460
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5302
            self updateInfoLabel.
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5303
            ^ self.
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5304
        ].
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5305
        something == #subImageIn ifTrue:[
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5306
            imagePreView image ~~ image ifTrue:[
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  5307
                self error:'internal error' mayProceed:true.
1406
6de5c78f5bcd checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1405
diff changeset
  5308
            ].
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5309
            self tileModeHolder value ifTrue:[
2042
963042f2c474 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2016
diff changeset
  5310
                imagePreView invalidate.
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5311
            ] ifFalse:[
2042
963042f2c474 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2016
diff changeset
  5312
                imagePreView invalidate:aParameter.
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5313
            ].
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5314
            ^ self.
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5315
        ].
1491
4249a6a1b252 pick with SHIFT-click in the mag-view
Claus Gittinger <cg@exept.de>
parents: 1490
diff changeset
  5316
        something == #selectedColor ifTrue:[
1842
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  5317
            (aParameter isNil or:[aParameter = (Color colorId:0)]) ifTrue:[
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  5318
                "/ no color/mask */
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  5319
                "/ self halt.
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5320
                clrIndex := self hasTransparentColorInColorList ifTrue:[1] ifFalse:[0].
1842
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  5321
            ] ifFalse:[
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  5322
                clrIndex := self listOfColors indexOf:aParameter.
1491
4249a6a1b252 pick with SHIFT-click in the mag-view
Claus Gittinger <cg@exept.de>
parents: 1490
diff changeset
  5323
            ].
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5324
            self selectedColors value:{clrIndex}. "/ selectionOfColor value:clrIndex.
1491
4249a6a1b252 pick with SHIFT-click in the mag-view
Claus Gittinger <cg@exept.de>
parents: 1490
diff changeset
  5325
            ^ self.
4249a6a1b252 pick with SHIFT-click in the mag-view
Claus Gittinger <cg@exept.de>
parents: 1490
diff changeset
  5326
        ].
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5327
        ^ self.
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5328
    ].
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5329
1880
8a11bb0a86e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1879
diff changeset
  5330
    changedObject == imageEditView modifiedHolder ifTrue:[
8a11bb0a86e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1879
diff changeset
  5331
        "/ self halt:'to be implemented'.
8a11bb0a86e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1879
diff changeset
  5332
        ^ self
8a11bb0a86e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1879
diff changeset
  5333
    ].
8a11bb0a86e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1879
diff changeset
  5334
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5335
    changedObject == imageEditView image ifTrue:[
2042
963042f2c474 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2016
diff changeset
  5336
        "/ self halt:'to be implemented'.
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5337
        self updateAfterImageChange.
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5338
        ^ self.
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5339
    ].
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5340
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5341
    super update:something with:aParameter from:changedObject
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5342
3493
4396fb652bd7 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3492
diff changeset
  5343
    "Modified: / 13-09-2017 / 18:01:26 / cg"
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5344
!
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5345
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5346
updateAfterImageChange
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5347
    |img|
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5348
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5349
    (img := self image) notNil ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5350
        img := img onDevice:device.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5351
        self updateColorsFromImage:img.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5352
        self findColorMapMode.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5353
        self updateLabelsAndHistory.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5354
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5355
        imageSeqNr isNil ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5356
            imageSeqNr := 1
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5357
        ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5358
        self imageHasImageSequenceHolder value:(self imageHasImageSequence).
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5359
        self imageHasNextImageHolder value:(self imageHasNextImage).
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5360
        self imageHasPreviousImageHolder value:(self imageHasPreviousImage).
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5361
        self alphaVisibleHolder value:(img hasAlphaChannel)
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5362
    ] ifFalse:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5363
        self updateForNoImage
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5364
    ]
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5365
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5366
    "Modified: / 05-09-2017 / 00:44:10 / cg"
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5367
!
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5368
1900
41ba86fb1087 cleanup
Claus Gittinger <cg@exept.de>
parents: 1899
diff changeset
  5369
updateColorsFromImage:image
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5370
    |colors depth|
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5371
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5372
    depth := image depth.
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5373
    
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5374
    depth > 16 ifTrue:[
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5375
        colors := #()  "/ too many - will only show the one's which are explicitly added.
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5376
    ] ifFalse:[
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5377
        ((image photometric == #blackIs0)
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5378
        or:[ image photometric == #whiteIs0 ]) ifTrue:[
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5379
            depth <= 8 ifTrue:[
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5380
                colors := 1 to:(1 << depth) collect:[:i | image colorFromValue:i-1]
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5381
            ].
2870
0f130285be97 changed:
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  5382
        ].
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5383
        colors isNil ifTrue:[
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5384
            colors := image colorMap.
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5385
            colors isNil ifTrue:[
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5386
                Error handle:[:ex |
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5387
                    colors := OrderedCollection new.
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5388
                ] do:[
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5389
                    colors := image usedColors asSet.
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5390
                ].
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5391
            ].
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5392
        ].
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5393
    ].    
1904
46a0b109cb47 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1900
diff changeset
  5394
    self listOfColors contents:(colors asOrderedCollection).
2870
0f130285be97 changed:
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  5395
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5396
    "Modified: / 31-08-2017 / 18:54:53 / cg"
1900
41ba86fb1087 cleanup
Claus Gittinger <cg@exept.de>
parents: 1899
diff changeset
  5397
!
41ba86fb1087 cleanup
Claus Gittinger <cg@exept.de>
parents: 1899
diff changeset
  5398
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  5399
updateForNoImage
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5400
    "updates channels and view, if image is loaded"
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5401
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  5402
    self imageIsLoadedHolder value: false.
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5403
    self listOfColors removeAll.
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5404
    self imagePreView image: nil.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5405
    self imageHasImageSequenceHolder value:false.
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5406
    self alphaVisibleHolder value:false.
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5407
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5408
    "Modified: / 05-09-2017 / 00:44:20 / cg"
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5409
!
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5410
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5411
updateLabelsAndHistory
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5412
    "updates labels and history, if something has changed"
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5413
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5414
    |image rsrcClass rsrcSelector imgFile|
1910
4ca9f4b322c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1906
diff changeset
  5415
4ca9f4b322c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1906
diff changeset
  5416
    image := self image.
4ca9f4b322c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1906
diff changeset
  5417
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  5418
    self imageIsLoadedHolder value: image notNil.
1910
4ca9f4b322c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1906
diff changeset
  5419
    image isNil ifTrue: [^nil].
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5420
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5421
    self updateInfoLabel.
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5422
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5423
    ((rsrcClass := imageEditView resourceClass) notNil 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5424
    and:[ (rsrcSelector := imageEditView resourceSelector) notNil ]) ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5425
        self addHistoryEntryForClass:rsrcClass selector:rsrcSelector.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5426
    ] ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5427
        (imgFile := image fileName) notNil ifTrue: [
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5428
            self addHistoryEntryForFile:imgFile.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5429
        ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5430
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5431
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5432
    "Modified: / 01-09-2017 / 10:10:12 / cg"
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5433
!
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5434
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5435
updateListOfColorsAndColormapMode
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5436
    |listOfColors selectedColor colorMap image|
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5437
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5438
    selectedColor := self selectedColorOrNil.
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5439
    listOfColors := self listOfColors.
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5440
    
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5441
    image := self image.
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5442
    image isNil ifTrue:[
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5443
        listOfColors removeAll.
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5444
    ] ifFalse:[
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5445
        colorMap := image colorMap.
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5446
        colorMap notNil ifTrue:[
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5447
            (colorMap size <= 4096) ifTrue:[
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5448
                (image mask notNil or:[image hasAlphaChannel]) ifTrue:[
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5449
                    colorMap := (Array with:(Color noColor)),colorMap.
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5450
                ].
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5451
                listOfColors contents:colorMap.
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5452
            ] ifFalse:[
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5453
                listOfColors removeAll.
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5454
                colorMap isFixedPalette ifTrue:[
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5455
                    image colorMap:nil.
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5456
                    image photometric:#rgb.
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5457
                    image samplesPerPixel:3.
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5458
                    
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5459
                    image bitsPerSample:(Array 
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5460
                                            with:(colorMap bitsRed)
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5461
                                            with:(colorMap bitsGreen)
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5462
                                            with:(colorMap bitsBlue)).
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5463
                ].
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5464
            ]
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5465
        ].
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5466
    ].
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5467
    self findColorMapMode.
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5468
    selectedColor notNil ifTrue:[
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5469
        self selectColor:selectedColor.
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5470
    ].
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5471
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5472
    "Modified: / 05-09-2017 / 08:25:14 / cg"
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5473
! !
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5474
915
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5475
!ImageEditor methodsFor:'data access'!
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5476
1951
9ad40a628278 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1949
diff changeset
  5477
atColor:anOldColor put:newColor
1952
73a141744891 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1951
diff changeset
  5478
    "a color changed to a new color"
73a141744891 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1951
diff changeset
  5479
1930
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  5480
    |index list oldColor image newImage oldSel|
1611
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5481
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5482
    list  := self listOfColors.
1951
9ad40a628278 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1949
diff changeset
  5483
    index := list identityIndexOf:anOldColor.
1611
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5484
1930
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  5485
    oldSel := self selectionOfColor value.
1611
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5486
    index ~~ 0 ifTrue:[
1928
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5487
        oldColor := list at:index.
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5488
        list at:index put:newColor
1611
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5489
    ] ifFalse:[
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  5490
        self error:'internal error' mayProceed:true.
1928
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5491
        list add:newColor
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5492
    ].
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5493
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5494
    image := self image.
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5495
    (image colorMap isNil 
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5496
    and:[drawingColormap isNil]) ifTrue:[
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5497
        oldColor notNil ifTrue:[
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5498
            imageEditView makeUndo.
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5499
            newImage := image copy.
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5500
            newImage
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5501
                colorsFromX:0 y:0 toX:(image width-1) y:(image height-1) 
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5502
                do:[:x :y :clr |
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5503
                    |newClr|
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5504
1951
9ad40a628278 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1949
diff changeset
  5505
                    newClr := (clr = oldColor) ifTrue:[newColor] ifFalse:[clr].
1928
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5506
                    newImage colorAtX:x y:y put:newClr
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5507
                ].
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5508
            imageEditView image:newImage.
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5509
            imageEditView setModified.
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5510
            self updateImage.
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5511
            self updateImagePreView.
1930
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  5512
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5513
            self selectedColors value:{oldSel}.
1930
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  5514
            imageEditView selectedColorIndex:oldSel.
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  5515
            imageEditView selectedColor:(self listOfColors at:oldSel).
1928
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5516
        ]
1611
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5517
    ].
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5518
!
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5519
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5520
blueAtColor:aColor put:newBlue
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5521
    "helper used to return a new row element, when blue is changed"
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5522
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5523
    |byte|
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5524
1611
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5525
    aColor isNil ifTrue:[^ self].       "/ mask cannot be changed
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5526
    byte := newBlue clampBetween:0 and:255.
1611
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5527
    byte = aColor blueByte ifTrue:[^ self ].
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5528
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5529
    self atColor:aColor
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5530
             put:(Color redByte:(aColor redByte) greenByte:(aColor greenByte) blueByte:byte).
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5531
!
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5532
915
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5533
blueFromColor:aColor
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5534
    "helper used to access a color as a row in the dataSet view"
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5535
930
4cf126b710b3 handle errors when grabbing
Claus Gittinger <cg@exept.de>
parents: 929
diff changeset
  5536
    aColor isNil ifTrue:[^ 'none'].
915
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5537
    ^ aColor blueByte ? 'mask'
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5538
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5539
    "Created: / 26.7.1998 / 12:30:35 / cg"
930
4cf126b710b3 handle errors when grabbing
Claus Gittinger <cg@exept.de>
parents: 929
diff changeset
  5540
    "Modified: / 31.7.1998 / 01:11:18 / cg"
915
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5541
!
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5542
945
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5543
canSelectBlueInColor:aColor
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5544
    ^ aColor blueByte notNil
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5545
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5546
    "Created: / 7.8.1998 / 22:50:34 / cg"
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5547
    "Modified: / 7.8.1998 / 22:52:57 / cg"
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5548
!
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5549
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5550
canSelectGreenInColor:aColor
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5551
    ^ aColor greenByte notNil
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5552
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5553
    "Created: / 7.8.1998 / 22:50:22 / cg"
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5554
    "Modified: / 7.8.1998 / 22:52:46 / cg"
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5555
!
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5556
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5557
canSelectRedInColor:aColor
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5558
    ^ aColor redByte notNil
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5559
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5560
    "Created: / 7.8.1998 / 22:50:00 / cg"
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5561
    "Modified: / 7.8.1998 / 22:51:03 / cg"
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5562
!
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5563
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5564
greenAtColor:aColor put:newGreen
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5565
    "helper used to return a new row element, when green is changed"
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5566
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5567
    |byte|
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5568
1611
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5569
    aColor isNil ifTrue:[^ self].       "/ mask cannot be changed
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5570
    byte := newGreen clampBetween:0 and:255.
1611
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5571
    byte = aColor greenByte ifTrue:[^ self].
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5572
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5573
    self atColor:aColor
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5574
             put:(Color redByte:(aColor redByte) greenByte:byte blueByte:(aColor blueByte)).
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5575
!
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5576
915
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5577
greenFromColor:aColor
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5578
    "helper used to access a color as a row in the dataSet view"
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5579
930
4cf126b710b3 handle errors when grabbing
Claus Gittinger <cg@exept.de>
parents: 929
diff changeset
  5580
    aColor isNil ifTrue:[^ 'none'].
915
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5581
    ^ aColor greenByte ? 'mask'
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5582
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5583
    "Created: / 26.7.1998 / 12:30:29 / cg"
930
4cf126b710b3 handle errors when grabbing
Claus Gittinger <cg@exept.de>
parents: 929
diff changeset
  5584
    "Modified: / 31.7.1998 / 01:11:31 / cg"
915
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5585
!
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5586
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5587
redAtColor:aColor put:newRed
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5588
    "helper used to return a new row element, when red is changed"
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5589
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5590
    |byte|
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5591
1611
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5592
    aColor isNil ifTrue:[^ self].       "/ mask cannot be changed
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5593
    byte := newRed clampBetween:0 and:255.
1611
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5594
    byte = aColor redByte ifTrue:[^ self].
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5595
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5596
    self atColor:aColor
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5597
             put:(Color redByte:byte greenByte:(aColor greenByte) blueByte:(aColor blueByte)).
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5598
!
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5599
915
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5600
redFromColor:aColor
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5601
    "helper used to access a color as a row in the dataSet view"
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5602
930
4cf126b710b3 handle errors when grabbing
Claus Gittinger <cg@exept.de>
parents: 929
diff changeset
  5603
    aColor isNil ifTrue:[^ 'none'].
915
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5604
    ^ aColor redByte ? 'mask'
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5605
930
4cf126b710b3 handle errors when grabbing
Claus Gittinger <cg@exept.de>
parents: 929
diff changeset
  5606
    "Modified: / 31.7.1998 / 01:11:35 / cg"
1449
49ad9f552d64 oops - fixed bg-color access in dataset
Claus Gittinger <cg@exept.de>
parents: 1446
diff changeset
  5607
!
49ad9f552d64 oops - fixed bg-color access in dataset
Claus Gittinger <cg@exept.de>
parents: 1446
diff changeset
  5608
2712
cddda688a9f2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2711
diff changeset
  5609
theColorItself:aColor
cddda688a9f2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2711
diff changeset
  5610
    "an accessor for the table-column"
cddda688a9f2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2711
diff changeset
  5611
1449
49ad9f552d64 oops - fixed bg-color access in dataset
Claus Gittinger <cg@exept.de>
parents: 1446
diff changeset
  5612
    ^ aColor
915
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5613
! !
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5614
2663
Claus Gittinger <cg@exept.de>
parents: 2653
diff changeset
  5615
!ImageEditor methodsFor:'defaults'!
Claus Gittinger <cg@exept.de>
parents: 2653
diff changeset
  5616
Claus Gittinger <cg@exept.de>
parents: 2653
diff changeset
  5617
aboutIcon
Claus Gittinger <cg@exept.de>
parents: 2653
diff changeset
  5618
    ^ self class defaultIcon
Claus Gittinger <cg@exept.de>
parents: 2653
diff changeset
  5619
! !
Claus Gittinger <cg@exept.de>
parents: 2653
diff changeset
  5620
2339
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5621
!ImageEditor methodsFor:'drag & drop'!
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5622
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5623
canDropObjects:aCollectionOfDropObjects in:aWidget
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5624
    ^ (aCollectionOfDropObjects size == 1) 
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5625
      and:[ aCollectionOfDropObjects 
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5626
                contains:[:dropObject | dropObject isFileObject]]
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5627
!
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5628
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5629
dropObjects:aCollectionOfDropObjects in:aWidget at:position
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5630
    |dropObject|
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5631
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5632
    dropObject := aCollectionOfDropObjects first.
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5633
    dropObject isFileObject ifTrue:[
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5634
        self loadFromFile:dropObject asFilename.
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5635
    ]
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5636
! !
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5637
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5638
!ImageEditor methodsFor:'event handling'!
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5639
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5640
processEvent:anEvent
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5641
    "Return true, if I have eaten the event"
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5642
2945
facf3c7b0e31 changed: #processEvent:
Claus Gittinger <cg@exept.de>
parents: 2932
diff changeset
  5643
    <resource: #keyboard (#Paste #Copy )>
facf3c7b0e31 changed: #processEvent:
Claus Gittinger <cg@exept.de>
parents: 2932
diff changeset
  5644
2841
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5645
    |view focusView p transformation|
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5646
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5647
    view := anEvent view.
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5648
    view notNil ifTrue:[
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5649
        
2841
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5650
        view == self imagePreView ifTrue:[
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5651
            ((anEvent isButtonPressEvent and:[ anEvent button == 1 ])
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5652
            or:[ anEvent isButtonMotionEvent and:[ anEvent hasButton1 ]])  ifTrue:[
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5653
                p := anEvent x @ anEvent y.                
2841
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5654
                (transformation := view transformation) notNil ifTrue:[
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5655
                    p := transformation applyInverseTo:p.
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5656
                ].
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5657
                p := p / self previewMagnificationHolder value.
2841
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5658
                self imageEditView scrollToMakeVisible:p.    
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5659
                ^ true.
2546
b69247f503b8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2539
diff changeset
  5660
            ].
2841
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5661
        ].
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5662
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5663
        anEvent isKeyPressEvent ifTrue:[
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5664
            focusView := view windowGroup focusView ? view.
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5665
            (focusView isComponentOf:(builder componentAt:#colorDataSetView)) ifTrue:[
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5666
                anEvent key == #Paste ifTrue:[
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5667
                    self pasteColorIntoColormap.
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5668
                    ^ true.
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5669
                ].
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5670
                anEvent key == #Copy ifTrue:[
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5671
                    self copyColorFromColormap.
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5672
                    ^ true.
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5673
                ].
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5674
            ].
2339
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5675
        ].
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5676
    ].
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5677
    ^ false.
2841
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5678
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5679
    "Modified: / 10-09-2017 / 16:40:13 / cg"
2339
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5680
! !
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5681
672
738210a2fa06 revised version
tz
parents: 651
diff changeset
  5682
!ImageEditor methodsFor:'help'!
738210a2fa06 revised version
tz
parents: 651
diff changeset
  5683
738210a2fa06 revised version
tz
parents: 651
diff changeset
  5684
defaultInfoLabel
1969
f1763f6f4500 stripped down menu, if in browser
Claus Gittinger <cg@exept.de>
parents: 1967
diff changeset
  5685
    "returns the text shown in the info label, when the mouse is NOT over
f1763f6f4500 stripped down menu, if in browser
Claus Gittinger <cg@exept.de>
parents: 1967
diff changeset
  5686
     some widget with a help text."
672
738210a2fa06 revised version
tz
parents: 651
diff changeset
  5687
3465
510f01b982de #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3464
diff changeset
  5688
    |resourceClass resourceSelector img|
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5689
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5690
    resourceClass := imageEditView resourceClass.
1965
1d2b7893ae89 some code cleanup (resourceClass was actually its name)
Claus Gittinger <cg@exept.de>
parents: 1962
diff changeset
  5691
    resourceClass notNil ifTrue:[
1969
f1763f6f4500 stripped down menu, if in browser
Claus Gittinger <cg@exept.de>
parents: 1967
diff changeset
  5692
        resourceSelector := imageEditView resourceSelector.
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5693
        resourceSelector notNil ifTrue:[
3469
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5694
            ^ resources 
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5695
                    string:(self modified 
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5696
                            ifTrue:['Image (modified) from: %1 » %2']
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5697
                            ifFalse:['Image from: %1 » %2'])
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5698
                    with:resourceClass name
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5699
                    with:resourceSelector
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5700
        ].
672
738210a2fa06 revised version
tz
parents: 651
diff changeset
  5701
    ].
3465
510f01b982de #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3464
diff changeset
  5702
    
510f01b982de #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3464
diff changeset
  5703
    (img := imageEditView image) notNil ifTrue:[
510f01b982de #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3464
diff changeset
  5704
        img fileName notNil ifTrue:[
3469
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5705
            ^ resources 
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5706
                    string:(self modified 
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5707
                            ifTrue:['Image (modified) from: %1']
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5708
                            ifFalse:['Image from: %1'])
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5709
                     with:(img fileName asFilename baseName).
3465
510f01b982de #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3464
diff changeset
  5710
        ].    
510f01b982de #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3464
diff changeset
  5711
    ].    
3380
0eb344c2fe3a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3379
diff changeset
  5712
    ^ resources string:'No class and selector defined.'
3465
510f01b982de #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3464
diff changeset
  5713
3469
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5714
    "Modified: / 29-08-2017 / 19:47:25 / cg"
674
d49e23b768e6 unused method found + help file access added
tz
parents: 673
diff changeset
  5715
!
d49e23b768e6 unused method found + help file access added
tz
parents: 673
diff changeset
  5716
702
c9de7a9bc416 docu call changed
tz
parents: 694
diff changeset
  5717
openDocumentation
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5718
    "opens the documentation file of the Image Editor"
674
d49e23b768e6 unused method found + help file access added
tz
parents: 673
diff changeset
  5719
763
19b3e479e0b8 docu call
tz
parents: 756
diff changeset
  5720
    self openHTMLDocument: 'tools/uipainter/ImageEditor.html'
19b3e479e0b8 docu call
tz
parents: 756
diff changeset
  5721
672
738210a2fa06 revised version
tz
parents: 651
diff changeset
  5722
! !
738210a2fa06 revised version
tz
parents: 651
diff changeset
  5723
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5724
!ImageEditor methodsFor:'loading'!
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5725
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5726
loadFromClass:aClass andSelector:aSelector
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5727
    "loads an image from the method specified by class and selector"
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5728
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5729
    self assert:(aClass isNil or:[aClass isClass]).
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5730
2932
7f305ee14e98 changed: #loadFromClass:andSelector:
Claus Gittinger <cg@exept.de>
parents: 2893
diff changeset
  5731
    (aClass isNil or:[aSelector isNil]) ifTrue:[
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5732
        imageEditView resourceClass:aClass.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5733
        imageEditView resourceSelector:aSelector.
1969
f1763f6f4500 stripped down menu, if in browser
Claus Gittinger <cg@exept.de>
parents: 1967
diff changeset
  5734
        imageEditView image:nil.
2006
ae6fe65e9f33 embedding as special editors
Claus Gittinger <cg@exept.de>
parents: 1998
diff changeset
  5735
        self clearModified.
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5736
        ^ self.
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5737
    ].
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5738
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5739
    (imageEditView loadFromClass:aClass andSelector:aSelector) notNil ifTrue:[
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5740
        self updateAfterImageChange.
2006
ae6fe65e9f33 embedding as special editors
Claus Gittinger <cg@exept.de>
parents: 1998
diff changeset
  5741
        self clearModified.
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5742
    ]
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5743
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5744
    "Modified: / 16-03-1999 / 21:44:41 / cg"
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5745
    "Modified (comment): / 16-02-2017 / 10:22:51 / cg"
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5746
!
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5747
2339
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5748
loadFromFile:aFileName
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5749
    "loads an image from aFileName and sets up color map list and other info labels"
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5750
980
bd21079f40e1 show waitCursor while loading from file.
Claus Gittinger <cg@exept.de>
parents: 976
diff changeset
  5751
    self withCursor:Cursor wait do:[
bd21079f40e1 show waitCursor while loading from file.
Claus Gittinger <cg@exept.de>
parents: 976
diff changeset
  5752
        (imageEditView loadFromFile: aFileName) notNil ifTrue:[
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5753
            self updateAfterImageChange
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5754
        ]
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5755
    ]
960
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  5756
1057
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  5757
    "Modified: / 16.3.1999 / 21:44:26 / cg"
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5758
!
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5759
960
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  5760
loadFromImage:anImage
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5761
    "loads an image from anImage and sets up color map list and other info labels"
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5762
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5763
    |img|
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5764
1057
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  5765
    anImage notNil ifTrue:[    
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5766
        img := anImage onDevice:device.
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5767
    ].
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5768
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5769
    imageEditView image:img.
1799
e605f0af928a clear modified flag when an image is loaded
Claus Gittinger <cg@exept.de>
parents: 1796
diff changeset
  5770
    imageEditView clearModified.
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5771
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5772
    self updateAfterImageChange.
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5773
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5774
    "Modified: / 16-03-1999 / 21:43:56 / cg"
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5775
    "Modified (comment): / 16-02-2017 / 10:21:47 / cg"
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5776
!
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5777
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5778
loadFromOrPrepareForClass: aClass andSelector: aSelector
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5779
    "loads an image by evaluating aMessage;
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5780
     if no image could extract from aMessage; do set the class and the selector from 
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5781
     the aMessage for a saving at the end of editing"
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5782
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5783
    (imageEditView loadFromClass:aClass andSelector:aSelector) notNil ifTrue: [
1900
41ba86fb1087 cleanup
Claus Gittinger <cg@exept.de>
parents: 1899
diff changeset
  5784
        self updateColorsFromImage:self image.
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5785
        self findColorMapMode.
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5786
    ] ifFalse: [
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5787
        imageEditView resourceClass: aClass.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5788
        imageEditView resourceSelector:aSelector.
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5789
    ].
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5790
    self updateLabelsAndHistory.
1057
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  5791
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  5792
    "Modified: / 16.3.1999 / 21:45:07 / cg"
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5793
! !
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5794
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5795
!ImageEditor methodsFor:'menu aspects'!
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5796
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5797
canDrawCirclesHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5798
    ^ self imageIsLoadedAndNotReadonlyHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5799
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5800
    "Created: / 16-02-2017 / 01:41:31 / cg"
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5801
!
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5802
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5803
canDrawPointsHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5804
    ^ self imageIsLoadedAndNotReadonlyHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5805
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5806
    "Created: / 16-02-2017 / 01:39:37 / cg"
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5807
!
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5808
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5809
canDrawRectsHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5810
    ^ self imageIsLoadedAndNotReadonlyHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5811
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5812
    "Created: / 16-02-2017 / 01:40:17 / cg"
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5813
!
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5814
3435
e3e1eea25472 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3433
diff changeset
  5815
canFillCircleHolder
e3e1eea25472 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3433
diff changeset
  5816
    ^ self imageIsLoadedAndNotReadonlyHolder
e3e1eea25472 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3433
diff changeset
  5817
e3e1eea25472 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3433
diff changeset
  5818
    "Created: / 10-04-2017 / 08:46:00 / cg"
e3e1eea25472 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3433
diff changeset
  5819
!
e3e1eea25472 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3433
diff changeset
  5820
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5821
canFillRectsHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5822
    ^ self imageIsLoadedAndNotReadonlyHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5823
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5824
    "Created: / 16-02-2017 / 01:40:21 / cg"
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5825
!
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5826
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5827
canFloodFillHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5828
    ^ self imageIsLoadedAndNotReadonlyHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5829
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5830
    "Created: / 16-02-2017 / 01:41:33 / cg"
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5831
!
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5832
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5833
canSprayHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5834
    ^ self imageIsLoadedAndNotReadonlyHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5835
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5836
    "Created: / 16-02-2017 / 01:44:47 / cg"
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5837
!
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5838
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5839
colorMapMenuHolder
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5840
    ^ [ self class colorMapMenu ]
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5841
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5842
    "Created: / 31-08-2017 / 18:47:17 / cg"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5843
!
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5844
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5845
imageIsLoadedAndAllowedToChangeImageDimension
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5846
    "returns whether an image is loaded as value holder"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5847
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5848
    ^ [ 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5849
        self imageIsLoadedHolder value
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5850
        and:[ self allowedToChangeImageDimension ] 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5851
      ]
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5852
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5853
    "Created: / 16-02-2017 / 01:58:41 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5854
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5855
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5856
imageIsLoadedAndAllowedToChangeImageDimensionAndDepth
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5857
    "returns whether an image is loaded as value holder"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5858
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5859
    ^ [ 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5860
        self imageIsLoadedHolder value
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5861
        and:[ self allowedToChangeImageDimensionAndDepth ] 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5862
      ]
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5863
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5864
    "Modified: / 04-07-2010 / 10:15:43 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5865
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5866
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5867
imageIsLoadedAndAllowedToFlipHolder
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5868
    ^ self imageIsLoadedAndNotReadonlyHolder
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5869
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5870
    "Created: / 16-02-2017 / 01:57:02 / cg"
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5871
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5872
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5873
imageIsLoadedAndClassDefined
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5874
    "returns whether an image is loaded as value holder"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5875
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5876
    ^ [self hasClassAndSelectorDefinedHolder value
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5877
       and:[self imageIsLoadedHolder value]]
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5878
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5879
    "Created: / 31-07-1998 / 02:04:18 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5880
    "Modified: / 04-07-2010 / 10:15:48 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5881
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5882
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5883
imageIsLoadedAndNotReadonlyHolder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5884
    "returns whether an image is loaded and editable as value holder"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5885
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5886
    ^ BlockValue
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5887
        with:[:loaded | loaded and:[ self readOnly not ]]
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5888
        argument:(self imageIsLoadedHolder)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5889
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5890
    "Modified: / 16-02-2017 / 12:11:31 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5891
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5892
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5893
imageIsLoadedHolder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5894
    "returns whether an image is loaded as value holder"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5895
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5896
    |holder|
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5897
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5898
    (holder := builder bindingAt:#imageIsLoaded) isNil ifTrue:[
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5899
        builder aspectAt:#imageIsLoaded put:(holder :=  false asValue).
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5900
    ].
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5901
    ^ holder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5902
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5903
    "Created: / 04-07-2010 / 10:15:38 / cg"
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5904
! !
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5905
3374
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  5906
!ImageEditor methodsFor:'menu item visibility'!
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  5907
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  5908
isNotStandAloneAndMethodSaveAndLoadMenuItemsVisible
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  5909
    ^ self isNotStandAlone and:[ self methodSaveAndLoadMenuItemsVisible ]
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  5910
!
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  5911
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  5912
isStandAloneAndMethodSaveAndLoadMenuItemsVisible
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  5913
    ^ self isStandAlone and:[ self methodSaveAndLoadMenuItemsVisible ]
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  5914
!
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  5915
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  5916
methodSaveAndLoadMenuItemsVisible
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  5917
    ^ true
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  5918
!
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  5919
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  5920
modeMenuVisible
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  5921
    ^ true
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  5922
! !
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  5923
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5924
!ImageEditor methodsFor:'menu modes'!
228524287573 intitial checkin
tz
parents:
diff changeset
  5925
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  5926
colorMapMode
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5927
    "returns the colorMapMode"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5928
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  5929
    colorMapMode isNil ifTrue: [colorMapMode := '' asValue].
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5930
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  5931
    ^colorMapMode
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5932
!
228524287573 intitial checkin
tz
parents:
diff changeset
  5933
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  5934
editMode
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  5935
    "returns editMode"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5936
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  5937
    editMode isNil ifTrue: [
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  5938
        editMode := #point asValue.
1329
a38c2e29d1fb use onChangeEvaluate:
Claus Gittinger <cg@exept.de>
parents: 1309
diff changeset
  5939
        editMode onChangeEvaluate:[imageEditView editMode:(editMode value)]
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  5940
    ].
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  5941
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  5942
    ^editMode
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5943
!
228524287573 intitial checkin
tz
parents:
diff changeset
  5944
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  5945
mouseKeyColorMode
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  5946
    "returns mouseKeyColorMode"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5947
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5948
    mouseKeyColorMode isNil ifTrue:[
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  5949
        mouseKeyColorMode := 1 asValue.
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5950
        mouseKeyColorMode onChangeEvaluate: [
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5951
            imageEditView mouseKeyColorMode:mouseKeyColorMode value. 
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5952
            self selectedColors value:{ self listOfColors indexOf:imageEditView selectedColor }.
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5953
        ]
956
dc4df8952e82 check whether imageEditView is nil
ca
parents: 951
diff changeset
  5954
    ].
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5955
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  5956
    ^mouseKeyColorMode
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5957
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5958
    "Modified: / 10.2.2000 / 23:16:42 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5959
! !
228524287573 intitial checkin
tz
parents:
diff changeset
  5960
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5961
!ImageEditor methodsFor:'private'!
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5962
3460
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5963
askForDepthThenDo:aBlock
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5964
    |oldDepth suggestion depth|
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5965
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5966
    oldDepth := self image depth.
3471
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  5967
    
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  5968
    suggestion := LastDepth notNil ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  5969
                    LastDepth
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  5970
                  ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  5971
                    oldDepth > 8 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  5972
                        ifTrue:[8] 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  5973
                        ifFalse:[(oldDepth // 2 - 1) nextPowerOf2]
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  5974
                  ].
3460
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5975
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5976
    depth := Dialog request:'New depth ?' initialAnswer:suggestion asString.
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5977
    depth isEmptyOrNil ifTrue:[^ self].
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5978
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5979
    depth := Number readFrom:depth onError:nil.
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5980
    depth isNil ifTrue:[^ self].
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5981
3471
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  5982
    LastDepth := depth.    
3460
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5983
    aBlock value:depth
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5984
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5985
    "Created: / 24-08-2017 / 17:05:39 / cg"
3471
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  5986
    "Modified: / 30-08-2017 / 01:22:36 / cg"
3460
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5987
!
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5988
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5989
checkModified
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5990
    imageEditView modified value ifTrue:[
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5991
        (Dialog
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5992
            confirm:(resources string:'Image was not saved. Proceed anyway ?')
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5993
            yesLabel:(resources string:'Proceed')
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5994
            noLabel:(resources string:'Cancel')
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5995
            initialAnswer:false
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5996
        ) ifFalse: [^false].
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5997
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5998
        imageEditView clearModified.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5999
    ].
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6000
    ^ true
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6001
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6002
    "Modified: / 29.7.1998 / 18:55:24 / cg"
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6003
!
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6004
3379
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  6005
clearModifiedAndRememberImageSaved
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  6006
    "called after a save-to-xxx operation"
3375
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  6007
    
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  6008
    self clearModified.
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  6009
    savedImage := self image.
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  6010
!
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  6011
3379
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  6012
clearModifiedAndRememberImageSavedAsFile:file
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  6013
    "called after a save-to-file operation"
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  6014
    
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  6015
    self clearModifiedAndRememberImageSaved.
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  6016
    savedFile := file.
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  6017
!
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  6018
1960
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6019
pointFromString:aString
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6020
    |p s x y|
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6021
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6022
    p := Object readFromString:aString onError:nil.
1962
9166ba3ce7c3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1961
diff changeset
  6023
    p isPoint ifTrue:[^ p].
1960
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6024
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6025
    s := aString readStream.
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6026
    x := Number readFrom:s onError:nil.
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6027
    x notNil ifTrue:[
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6028
        s skipSeparators.
1962
9166ba3ce7c3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1961
diff changeset
  6029
        [s atEnd not and:[s peek isDigit not]] whileTrue:[s next].
1960
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6030
        y := Number readFrom:s onError:nil.
1961
d9082e597adb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1960
diff changeset
  6031
        ^ x @ (y ? x)
1960
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6032
    ].
1962
9166ba3ce7c3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1961
diff changeset
  6033
    ^ nil
1960
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6034
!
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6035
1939
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6036
sortBlockForColors
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6037
    ^ self sortBlockForColorsByHLS.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6038
"/    ^ self sortBlockForColorsByRGB
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6039
!
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6040
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6041
sortBlockForColorsByHLS
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6042
    ^ [:a :b |
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6043
        |h1 h2 s1 s2 l1 l2|
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6044
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6045
        h1 := a hue ? 0.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6046
        h2 := b hue ? 0.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6047
        (h1 between: h2-30 and:h2+30) ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6048
            l1 := a light.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6049
            l2 := b light.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6050
            l1 = l2 ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6051
                a saturation < b saturation
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6052
            ] ifFalse:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6053
                l1 < l2
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6054
            ].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6055
"/            s1 := a saturation.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6056
"/            s2 := b saturation.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6057
"/            s1 = s2 ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6058
"/                a light < b light
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6059
"/            ] ifFalse:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6060
"/                s1 < s2 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6061
"/            ]
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6062
        ] ifFalse:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6063
            h1 < h2 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6064
        ]
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6065
      ]
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6066
!
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6067
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6068
sortBlockForColorsByRGB
1939
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6069
    ^ [:a :b |
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6070
            a redByte == b redByte ifTrue:[
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6071
                a greenByte == b greenByte ifTrue:[
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6072
                    a blueByte < b blueByte
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6073
                ] ifFalse:[
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6074
                    a greenByte < b greenByte 
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6075
                ]
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6076
            ] ifFalse:[
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6077
                a redByte < b redByte 
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6078
            ]
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6079
      ]
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6080
!
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6081
1598
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  6082
updateImage
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  6083
    |img|
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  6084
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  6085
    img := imageEditView image.
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  6086
    imageEditView image:img.
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  6087
    self fetchImageData.
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6088
    self imageIsLoadedHolder changed.
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6089
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6090
    "Modified: / 16-02-2017 / 12:18:08 / cg"
1598
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  6091
!
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  6092
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  6093
updateImagePreView
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  6094
    self tileModeHolder value ifTrue:[
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  6095
        self imagePreView tileMode:true tileOffset:(self image extent).
1923
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6096
    ].
3253
32b2ae3350b9 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 3242
diff changeset
  6097
    self imagePreView 
32b2ae3350b9 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 3242
diff changeset
  6098
        setImage:(self image) scroll:false invalidate:false; "/ true.
32b2ae3350b9 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 3242
diff changeset
  6099
        invalidate.
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  6100
! !
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  6101
535
1caf545614c5 info bar subspec changed
tz
parents: 519
diff changeset
  6102
!ImageEditor methodsFor:'queries'!
1caf545614c5 info bar subspec changed
tz
parents: 519
diff changeset
  6103
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6104
hasAlphaChannel
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6105
    |img|
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6106
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6107
    img := self image.
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6108
    img isNil ifTrue:[^ false].
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6109
    ^ img hasAlphaChannel
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6110
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6111
    "Created: / 05-09-2017 / 08:29:23 / cg"
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6112
!
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6113
2707
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  6114
hasLastGrabScreenArea
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  6115
    ^ [ lastGrabbedScreenArea notNil ]
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  6116
!
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  6117
960
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6118
hasMask
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6119
    |img|
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6120
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6121
    img := self image.
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6122
    img isNil ifTrue:[^ false].
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6123
    img mask isNil ifTrue:[^ false].
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  6124
    ^ colorMapMode value notNil and:[colorMapMode value startsWith:'mask']
960
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6125
3411
fd6472405fd0 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3409
diff changeset
  6126
    "Created: / 18-08-1998 / 17:17:38 / cg"
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6127
    "Modified: / 05-09-2017 / 08:28:44 / cg"
3411
fd6472405fd0 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3409
diff changeset
  6128
!
fd6472405fd0 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3409
diff changeset
  6129
fd6472405fd0 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3409
diff changeset
  6130
hasMaskHolder
fd6472405fd0 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3409
diff changeset
  6131
    ^ [ self hasMask ]
fd6472405fd0 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3409
diff changeset
  6132
fd6472405fd0 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3409
diff changeset
  6133
    "Created: / 18-02-2017 / 00:41:19 / cg"
960
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6134
!
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6135
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6136
hasTransparentColorInColorList
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6137
    ^ self hasMask or:[self hasAlphaChannel]
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6138
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6139
    "Created: / 05-09-2017 / 09:03:24 / cg"
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6140
!
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6141
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6142
modified
3416
9d51a45479e3 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3415
diff changeset
  6143
    "true if the image was modified"
9d51a45479e3 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3415
diff changeset
  6144
    
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6145
    ^ imageEditView modified
3416
9d51a45479e3 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3415
diff changeset
  6146
9d51a45479e3 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3415
diff changeset
  6147
    "Modified (comment): / 20-02-2017 / 16:23:32 / cg"
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6148
!
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6149
2006
ae6fe65e9f33 embedding as special editors
Claus Gittinger <cg@exept.de>
parents: 1998
diff changeset
  6150
modified:aBoolean
ae6fe65e9f33 embedding as special editors
Claus Gittinger <cg@exept.de>
parents: 1998
diff changeset
  6151
    super modified:aBoolean.
ae6fe65e9f33 embedding as special editors
Claus Gittinger <cg@exept.de>
parents: 1998
diff changeset
  6152
    imageEditView modified:aBoolean
ae6fe65e9f33 embedding as special editors
Claus Gittinger <cg@exept.de>
parents: 1998
diff changeset
  6153
!
ae6fe65e9f33 embedding as special editors
Claus Gittinger <cg@exept.de>
parents: 1998
diff changeset
  6154
535
1caf545614c5 info bar subspec changed
tz
parents: 519
diff changeset
  6155
preferredExtent
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  6156
    "returns the preferred extent"
535
1caf545614c5 info bar subspec changed
tz
parents: 519
diff changeset
  6157
3443
b9d9eb4b34f9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3442
diff changeset
  6158
    ^ super preferredExtent max: ((Screen current width//3)@(Screen current height//3.5))
b9d9eb4b34f9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3442
diff changeset
  6159
b9d9eb4b34f9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3442
diff changeset
  6160
    "Modified (format): / 13-04-2017 / 09:52:25 / cg"
535
1caf545614c5 info bar subspec changed
tz
parents: 519
diff changeset
  6161
! !
1caf545614c5 info bar subspec changed
tz
parents: 519
diff changeset
  6162
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6163
!ImageEditor methodsFor:'selection'!
228524287573 intitial checkin
tz
parents:
diff changeset
  6164
228524287573 intitial checkin
tz
parents:
diff changeset
  6165
magnification
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  6166
    "returns the magnification of the image"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6167
911
ec8db5b62352 unnecessary calls removed
tz
parents: 905
diff changeset
  6168
    self imageEditView isNil ifTrue: [^1].
ec8db5b62352 unnecessary calls removed
tz
parents: 905
diff changeset
  6169
    ^imageEditView magnification x
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6170
!
228524287573 intitial checkin
tz
parents:
diff changeset
  6171
228524287573 intitial checkin
tz
parents:
diff changeset
  6172
magnification: aValue
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  6173
    "sets the magnification of the image"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6174
905
5f5d0a415c04 grid magnification can be changed
tz
parents: 903
diff changeset
  6175
    |magnification|        
5f5d0a415c04 grid magnification can be changed
tz
parents: 903
diff changeset
  6176
    magnification := (aValue ? 1) asPoint.
911
ec8db5b62352 unnecessary calls removed
tz
parents: 905
diff changeset
  6177
    (magnification = imageEditView magnification or: [magnification = (0@0)]) ifTrue: [^nil].
ec8db5b62352 unnecessary calls removed
tz
parents: 905
diff changeset
  6178
    imageEditView magnification: magnification
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6179
!
228524287573 intitial checkin
tz
parents:
diff changeset
  6180
228524287573 intitial checkin
tz
parents:
diff changeset
  6181
selectedColorIndex
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  6182
    "returns the index of the selected color"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6183
228524287573 intitial checkin
tz
parents:
diff changeset
  6184
    ^selectedColorIndex
228524287573 intitial checkin
tz
parents:
diff changeset
  6185
!
228524287573 intitial checkin
tz
parents:
diff changeset
  6186
228524287573 intitial checkin
tz
parents:
diff changeset
  6187
selectedColorIndex: anIndex
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  6188
    "sets the index of the selected color"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6189
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6190
    |clr pixel|
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6191
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6192
    selectedColorIndex := anIndex.
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  6193
    anIndex isNil ifTrue:[^ self].
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  6194
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6195
    clr := self listOfColors at:anIndex ifAbsent:nil.
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6196
    clr isNil ifTrue:[^ self].
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6197
1075
74795d3e647d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1057
diff changeset
  6198
    pixel := anIndex - 1.
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6199
    (self listOfColors at:1) = Color noColor ifTrue:[
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6200
        anIndex == 1 ifTrue:[
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6201
            pixel := nil.       "/ mask
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6202
        ] ifFalse:[
1075
74795d3e647d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1057
diff changeset
  6203
            pixel := pixel - 1
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6204
        ]
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6205
    ].
3409
d821859c163e #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3408
diff changeset
  6206
    imageEditView selectedColor:clr.
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6207
    imageEditView selectedColorIndex:pixel.
3409
d821859c163e #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3408
diff changeset
  6208
d821859c163e #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3408
diff changeset
  6209
    "Modified: / 17-02-2017 / 16:29:09 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6210
! !
228524287573 intitial checkin
tz
parents:
diff changeset
  6211
1716
5ae373f6fef0 method category rename
Claus Gittinger <cg@exept.de>
parents: 1715
diff changeset
  6212
!ImageEditor methodsFor:'startup & release'!
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6213
1640
87ce36f48fbc remember previous relative sizes and
Claus Gittinger <cg@exept.de>
parents: 1639
diff changeset
  6214
closeDownViews
1644
df1f5a97b8e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1643
diff changeset
  6215
    builder notNil ifTrue:[
df1f5a97b8e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1643
diff changeset
  6216
        DefaultRelativeSizes :=
df1f5a97b8e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1643
diff changeset
  6217
            Array 
1998
efd9be2585e3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1996
diff changeset
  6218
                with:(builder componentAt:#mainPanel) relativeCorners    
1644
df1f5a97b8e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1643
diff changeset
  6219
                with:(builder componentAt:#verticalPanel) relativeCorners.
df1f5a97b8e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1643
diff changeset
  6220
    ].
1640
87ce36f48fbc remember previous relative sizes and
Claus Gittinger <cg@exept.de>
parents: 1639
diff changeset
  6221
    super closeDownViews
87ce36f48fbc remember previous relative sizes and
Claus Gittinger <cg@exept.de>
parents: 1639
diff changeset
  6222
!
87ce36f48fbc remember previous relative sizes and
Claus Gittinger <cg@exept.de>
parents: 1639
diff changeset
  6223
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6224
closeRequest
2016
62843f7d07b7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2006
diff changeset
  6225
    "asks for permission before closing"
62843f7d07b7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2006
diff changeset
  6226
62843f7d07b7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2006
diff changeset
  6227
    imageEditView checkModified ifTrue:[
62843f7d07b7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2006
diff changeset
  6228
        super closeRequest
62843f7d07b7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2006
diff changeset
  6229
    ]
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6230
!
228524287573 intitial checkin
tz
parents:
diff changeset
  6231
1980
862d4036cebd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1975
diff changeset
  6232
commonPostBuild
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6233
    imageEditView undoImages addDependent:self.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6234
    imageEditView imageInfoHolder:(self imageInfoHolder).
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6235
    imageEditView activityInfoHolder:(self activityInfoHolder).
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6236
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6237
    imageEditView clickInfoCallBack:[:button :point | 
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6238
                        |mouseButtonColorToolBar|
3170
a49100905be3 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  6239
                        button <= 2 ifTrue:[
a49100905be3 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  6240
                            mouseButtonColorToolBar := self componentAt:#MouseButtonColorToolBar.
a49100905be3 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  6241
                            (mouseButtonColorToolBar itemAt:button) toggleIndication.
a49100905be3 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  6242
                            mouseButtonColorToolBar do: [:i| i updateIndicators].
a49100905be3 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  6243
                        ].
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6244
                  ].
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6245
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6246
    imageEditView addDependent:self.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6247
    imageEditView modifiedHolder addDependent:self.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6248
1640
87ce36f48fbc remember previous relative sizes and
Claus Gittinger <cg@exept.de>
parents: 1639
diff changeset
  6249
    DefaultRelativeSizes notNil ifTrue:[
1998
efd9be2585e3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1996
diff changeset
  6250
        (builder componentAt:#mainPanel) relativeCorners:DefaultRelativeSizes first.
1980
862d4036cebd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1975
diff changeset
  6251
        (builder componentAt:#verticalPanel) relativeCorners:DefaultRelativeSizes second.
1640
87ce36f48fbc remember previous relative sizes and
Claus Gittinger <cg@exept.de>
parents: 1639
diff changeset
  6252
    ].
1995
ad11533a39e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1993
diff changeset
  6253
1996
d18588052ade infoHolder handling
Claus Gittinger <cg@exept.de>
parents: 1995
diff changeset
  6254
    "/ using masters infoHolder ?
d18588052ade infoHolder handling
Claus Gittinger <cg@exept.de>
parents: 1995
diff changeset
  6255
    (builder aspectAt:#useAlienInfoLabelHolder) == true ifTrue:[
1998
efd9be2585e3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1996
diff changeset
  6256
        (builder componentAt:#mainPanel) layout bottomOffset:0.
1995
ad11533a39e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1993
diff changeset
  6257
        (builder componentAt:#infoBarSubSpec) beInvisible
ad11533a39e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1993
diff changeset
  6258
    ]
1640
87ce36f48fbc remember previous relative sizes and
Claus Gittinger <cg@exept.de>
parents: 1639
diff changeset
  6259
!
87ce36f48fbc remember previous relative sizes and
Claus Gittinger <cg@exept.de>
parents: 1639
diff changeset
  6260
1980
862d4036cebd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1975
diff changeset
  6261
open
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6262
    "after opening, gets the imageEditView"
1980
862d4036cebd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1975
diff changeset
  6263
862d4036cebd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1975
diff changeset
  6264
    super open.
862d4036cebd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1975
diff changeset
  6265
862d4036cebd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1975
diff changeset
  6266
    imageEditView := (self componentAt: #imageEditView) subViews first.
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6267
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6268
    "Modified (comment): / 05-09-2017 / 10:39:45 / cg"
1980
862d4036cebd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1975
diff changeset
  6269
!
862d4036cebd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1975
diff changeset
  6270
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6271
postOpenWith:aBuilder
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  6272
    "after opening, sets the masterApplication of the imageEditView to self;
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  6273
     evaluate the postOpenAction"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6274
1921
699dca2ebb51 code cleanup
Claus Gittinger <cg@exept.de>
parents: 1916
diff changeset
  6275
    postOpenAction value.
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6276
1250
644ed357b524 reset menuBar in keyProcessor
ca
parents: 1196
diff changeset
  6277
    super postOpenWith:aBuilder.
644ed357b524 reset menuBar in keyProcessor
ca
parents: 1196
diff changeset
  6278
644ed357b524 reset menuBar in keyProcessor
ca
parents: 1196
diff changeset
  6279
    aBuilder keyboardProcessor menuBar:nil.
2339
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  6280
    self windowGroup addPreEventHook:self.
3415
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  6281
    self colorCropTabSelectionIndexChanged.
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  6282
3421
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  6283
    self drawingColor1Holder valueHolder:(imageEditView drawingColorHolders at:1).
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  6284
    self drawingColor2Holder valueHolder:(imageEditView drawingColorHolders at:2).
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6285
    imageEditView drawingAlpha:(self alphaHolder value).
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6286
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6287
    "Modified (format): / 05-09-2017 / 10:40:10 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6288
! !
228524287573 intitial checkin
tz
parents:
diff changeset
  6289
1715
9eebdb3802aa method category rename
Claus Gittinger <cg@exept.de>
parents: 1713
diff changeset
  6290
!ImageEditor methodsFor:'user actions-colormap'!
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6291
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6292
addColorToColormap
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6293
    "undoable: add black (a new color) to the map"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6294
    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6295
    self addColorToColormap:(Color black) undoable:true
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6296
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6297
    "Modified: / 31-08-2017 / 14:30:32 / cg"
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  6298
!
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  6299
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  6300
addColorToColormap:newColor
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6301
    "undoable
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6302
     when editing a palette image, the new color is added to the image's colorMap
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6303
     (unless it is full).
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6304
     When editing a true-color image, it is added to my own list-of-colors,
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6305
     which only holds drawing colors, but is not the colormap's image"
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6306
     
1643
91b7ea254a3b some changes to support drawing into 24-bit images
Claus Gittinger <cg@exept.de>
parents: 1640
diff changeset
  6307
    |depth img cMap newColorMap newImage oldCListSize newMode listOfColors|
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6308
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6309
    img := self image.
1499
0c57ab09156b about menu items moved into the Help-menu
Claus Gittinger <cg@exept.de>
parents: 1496
diff changeset
  6310
    img isNil ifTrue:[
0c57ab09156b about menu items moved into the Help-menu
Claus Gittinger <cg@exept.de>
parents: 1496
diff changeset
  6311
        self warn:'No Image.'.
0c57ab09156b about menu items moved into the Help-menu
Claus Gittinger <cg@exept.de>
parents: 1496
diff changeset
  6312
        ^ self
0c57ab09156b about menu items moved into the Help-menu
Claus Gittinger <cg@exept.de>
parents: 1496
diff changeset
  6313
    ].
0c57ab09156b about menu items moved into the Help-menu
Claus Gittinger <cg@exept.de>
parents: 1496
diff changeset
  6314
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6315
    depth := img depth.
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6316
    cMap := img colorMap.
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  6317
    (cMap isNil or:[cMap isMappedPalette or:[cMap isFixedPalette]]) ifTrue:[
1643
91b7ea254a3b some changes to support drawing into 24-bit images
Claus Gittinger <cg@exept.de>
parents: 1640
diff changeset
  6318
        drawingColormap isNil ifTrue:[
1916
c91c39976bef *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1910
diff changeset
  6319
            self information:(resources stringWithCRs:'Image has no colormap.\The shown colorMap is for drawing only.').
1643
91b7ea254a3b some changes to support drawing into 24-bit images
Claus Gittinger <cg@exept.de>
parents: 1640
diff changeset
  6320
            drawingColormap := OrderedCollection new.
91b7ea254a3b some changes to support drawing into 24-bit images
Claus Gittinger <cg@exept.de>
parents: 1640
diff changeset
  6321
        ].
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  6322
        drawingColormap add:newColor.
1643
91b7ea254a3b some changes to support drawing into 24-bit images
Claus Gittinger <cg@exept.de>
parents: 1640
diff changeset
  6323
        self listOfColors contents:drawingColormap.
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6324
        self selectedColors value:{drawingColormap size}.
1643
91b7ea254a3b some changes to support drawing into 24-bit images
Claus Gittinger <cg@exept.de>
parents: 1640
diff changeset
  6325
        "/ self warn:'Image has no colormap.\Change colorMap mode first.' withCRs.
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6326
        ^ self
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6327
    ].
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6328
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6329
    (cMap size == (1 bitShift:depth)) ifTrue:[
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6330
        depth >= 8 ifTrue:[
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6331
            self warn:'No space for more colors in colormap.'.
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6332
            ^ self
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6333
        ].
1916
c91c39976bef *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1910
diff changeset
  6334
        (self confirm:(resources stringWithCRs:'No space for more colors in colormap.\Change depth ?'))
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6335
        ifFalse:[
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6336
            ^ self
1057
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  6337
        ].
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  6338
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  6339
        imageEditView makeUndo.
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  6340
        img mask notNil ifTrue:[
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  6341
            newMode := 'masked' , (depth*2) printString.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  6342
        ] ifFalse:[
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  6343
            newMode := 'depth' , (depth*2) printString.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  6344
        ].
1057
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  6345
        self colorMapMode:newMode.
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  6346
    ] ifFalse:[
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  6347
        imageEditView makeUndo.
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6348
    ].
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6349
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6350
    cMap := cMap asArray.
1643
91b7ea254a3b some changes to support drawing into 24-bit images
Claus Gittinger <cg@exept.de>
parents: 1640
diff changeset
  6351
    listOfColors := self listOfColors.
91b7ea254a3b some changes to support drawing into 24-bit images
Claus Gittinger <cg@exept.de>
parents: 1640
diff changeset
  6352
    oldCListSize := listOfColors size.
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6353
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  6354
    newColorMap := cMap copyWith:newColor.
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6355
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6356
    newImage := img species new
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6357
                    width:(img width) height:(img height) depth:depth
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6358
                    fromArray:img bits.
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6359
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6360
    newImage colorMap:newColorMap.  
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6361
    newImage fileName:img fileName.
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6362
    newImage mask:(img mask copy).
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6363
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6364
    (imageEditView image:newImage) notNil ifTrue:[
1643
91b7ea254a3b some changes to support drawing into 24-bit images
Claus Gittinger <cg@exept.de>
parents: 1640
diff changeset
  6365
        listOfColors contents: newImage colorMap.
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6366
        self findColorMapMode.
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6367
        "/ mhmh - somehow, we get two colors added ... (sigh findColorMapMode adds another one ...)
1643
91b7ea254a3b some changes to support drawing into 24-bit images
Claus Gittinger <cg@exept.de>
parents: 1640
diff changeset
  6368
        listOfColors size > (oldCListSize + 1) ifTrue:[
91b7ea254a3b some changes to support drawing into 24-bit images
Claus Gittinger <cg@exept.de>
parents: 1640
diff changeset
  6369
            listOfColors removeLast
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6370
        ].
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6371
        self selectedColors value:{listOfColors size}.
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6372
        self updateLabelsAndHistory.
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6373
    ]
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6374
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  6375
    "Created: / 12-03-1999 / 00:20:28 / cg"
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6376
    "Modified: / 16-02-2017 / 10:17:25 / cg"
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6377
    "Modified (comment): / 31-08-2017 / 14:28:11 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6378
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6379
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6380
addColorToColormap:newColor undoable:undoable
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6381
    "when editing a palette image, the new color is added to the image's colorMap
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6382
     (unless it is full).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6383
     When editing a true-color image, it is added to my own list-of-colors,
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6384
     which only holds drawing colors, but is not the colormap's image"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6385
     
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6386
    |depth img cMap newColorMap newImage oldCListSize newMode listOfColors|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6387
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6388
    img := self image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6389
    img isNil ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6390
        self warn:'No Image.'.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6391
        ^ self
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6392
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6393
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6394
    depth := img depth.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6395
    cMap := img colorMap.
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6396
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6397
    (cMap notNil and:[cMap isMappedPalette or:[cMap isArray]]) ifTrue:[
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6398
    ] ifFalse:[
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6399
        (cMap isNil or:[cMap isFixedPalette]) ifTrue:[
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6400
            drawingColormap isNil ifTrue:[
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6401
                self information:(resources stringWithCRs:'Image has no colormap.\The shown colorMap is for drawing only.').
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6402
                drawingColormap := OrderedCollection new.
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6403
            ].
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6404
            drawingColormap add:newColor.
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6405
            self listOfColors contents:drawingColormap.
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6406
            self selectedColors value:{drawingColormap size}.
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6407
            "/ self warn:'Image has no colormap.\Change colorMap mode first.' withCRs.
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6408
            ^ self
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6409
        ].
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6410
    ].
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6411
    
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6412
    (cMap size == (1 bitShift:depth)) ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6413
        depth >= 8 ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6414
            self warn:'No space for more colors in colormap.'.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6415
            ^ self
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6416
        ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6417
        (self confirm:(resources stringWithCRs:'No space for more colors in colormap.\Change depth ?'))
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6418
        ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6419
            ^ self
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6420
        ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6421
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6422
        undoable ifTrue:[ imageEditView makeUndo ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6423
        img mask notNil ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6424
            newMode := 'masked' , (depth*2) printString.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6425
        ] ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6426
            newMode := 'depth' , (depth*2) printString.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6427
        ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6428
        self colorMapMode:newMode.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6429
    ] ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6430
        undoable ifTrue:[ imageEditView makeUndo ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6431
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6432
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6433
    cMap := cMap asArray.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6434
    listOfColors := self listOfColors.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6435
    oldCListSize := listOfColors size.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6436
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6437
    newColorMap := cMap copyWith:newColor.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6438
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6439
    newImage := img species new
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6440
                    width:(img width) height:(img height) depth:depth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6441
                    fromArray:img bits.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6442
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6443
    newImage colorMap:newColorMap.  
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6444
    newImage fileName:img fileName.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6445
    newImage mask:(img mask copy).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6446
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6447
    (imageEditView image:newImage) notNil ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6448
        listOfColors contents: newImage colorMap.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6449
        self findColorMapMode.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6450
        "/ mhmh - somehow, we get two colors added ... (sigh findColorMapMode adds another one ...)
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6451
        listOfColors size > (oldCListSize + 1) ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6452
            listOfColors removeLast
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6453
        ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6454
        self selectedColors value:{listOfColors size}.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6455
        self updateLabelsAndHistory.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6456
    ]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6457
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6458
    "Created: / 31-08-2017 / 14:30:01 / cg"
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6459
    "Modified: / 08-10-2017 / 09:15:10 / cg"
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6460
!
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6461
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6462
addPastedColorToColormap
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6463
    "undoable: add the color in the clipboard to the map"
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6464
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6465
    |clipBoardColor|
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6466
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6467
    (clipBoardColor := self clipBoardColor) isNil ifTrue:[                
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6468
        ^ self
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6469
    ].
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6470
    self addColorToColormap:clipBoardColor undoable:true
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6471
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6472
    "Created: / 08-10-2017 / 09:04:23 / cg"
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6473
!
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6474
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6475
changeHLS
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6476
    "interactive Hue/Light/Saturation editing with thumbWheels"
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6477
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6478
    |bindings hueShift lightValue saturationValue originalColormap firstChange acceptChannel 
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6479
     shiftAction originalAvgColor avgColorHolder avgColor shiftedColor shiftProcess readySema
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6480
     originalPixels p previewImage previewImageHolder originalPreviewColormap originalPreviewPixels
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6481
     anyChange |
1652
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6482
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6483
    avgColorHolder := nil asValue.
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6484
    previewImageHolder := nil asValue.
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6485
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6486
    "/
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6487
    "/ compute the averageColor in the background (while building dialog and asking user)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6488
    "/
1652
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6489
    readySema := Semaphore new.
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6490
    [
1923
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6491
        |image|
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6492
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6493
        image := imageEditView image.
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6494
        originalColormap := image colorMap copy.
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6495
        originalPixels := image bits.
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6496
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6497
        previewImage := self image magnifiedPreservingRatioTo:100@100.
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6498
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6499
        avgColor := originalAvgColor := previewImage "image" averageColor.
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6500
        avgColorHolder value:avgColor.
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6501
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6502
        previewImageHolder value: previewImage.
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6503
        originalPreviewColormap := previewImage colorMap copy.
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6504
        originalPreviewPixels := previewImage bits.
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6505
1652
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6506
        readySema signal.
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6507
    ] forkAt:7.
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6508
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6509
    acceptChannel := TriggerValue new.
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6510
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6511
    firstChange := true.
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6512
    anyChange := false.
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6513
1651
577ddbd9fb26 better hls color display
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  6514
    shiftedColor := [:clr :hShift :lFactor :sFactor |
577ddbd9fb26 better hls color display
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  6515
                        Color 
577ddbd9fb26 better hls color display
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  6516
                                hue:((clr hue) ? 0 + hShift) 
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6517
                                light:((clr light * (lFactor/100)) min:100)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6518
                                saturation:((clr saturation * (sFactor/100)) min:100)].
1652
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6519
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6520
    shiftAction := 
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6521
        [
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6522
            |hShift lFactor sFactor|
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6523
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6524
            acceptChannel value:true.
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6525
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6526
            firstChange ifTrue:[
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6527
                imageEditView makeUndo.
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6528
                firstChange := false.
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6529
                anyChange := true.
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6530
            ].
1652
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6531
            readySema notNil ifTrue:[readySema wait. readySema := nil].
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6532
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6533
            hShift := hueShift value.
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6534
            lFactor := lightValue value.
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6535
            sFactor := saturationValue value.
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6536
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6537
            avgColorHolder value:(shiftedColor value:originalAvgColor value:hShift value:lFactor value:sFactor).
1652
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6538
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6539
            previewImage
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6540
                colorMap:originalPreviewColormap copy;
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6541
                bits:originalPreviewPixels copy;
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6542
                release;
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6543
                colorMapProcessing:[:clr | shiftedColor value:clr value:hShift value:lFactor value:sFactor].
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6544
            previewImageHolder value:nil; value:previewImage.
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6545
1652
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6546
            shiftProcess notNil ifTrue:[
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6547
                shiftProcess terminate.
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6548
                shiftProcess waitUntilTerminated.
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6549
                shiftProcess := nil.
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6550
            ].
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6551
            shiftProcess := 
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6552
                [
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6553
                    [
1656
f5c0716efd78 menu labels
Claus Gittinger <cg@exept.de>
parents: 1652
diff changeset
  6554
                        imageEditView image 
f5c0716efd78 menu labels
Claus Gittinger <cg@exept.de>
parents: 1652
diff changeset
  6555
                            colorMap:originalColormap copy;
1923
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6556
                            bits:originalPixels copy;
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6557
                            release;
1656
f5c0716efd78 menu labels
Claus Gittinger <cg@exept.de>
parents: 1652
diff changeset
  6558
                            colorMapProcessing:[:clr | shiftedColor value:clr value:hShift value:lFactor value:sFactor].
1652
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6559
                        self updateImage.
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6560
                        self updateInfoLabel.
1923
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6561
                        self updateImagePreView.
1652
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6562
                    ] ensure:[ shiftProcess := nil ].    
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6563
                ] forkAt:7.
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6564
        ].
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6565
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6566
    bindings := IdentityDictionary new.
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6567
    bindings at:#hueShiftAmount put:(hueShift := 0 asValue).
1656
f5c0716efd78 menu labels
Claus Gittinger <cg@exept.de>
parents: 1652
diff changeset
  6568
    hueShift onChangeEvaluate:shiftAction.
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6569
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6570
    bindings at:#lightAmount put:(lightValue := 100 asValue).
1656
f5c0716efd78 menu labels
Claus Gittinger <cg@exept.de>
parents: 1652
diff changeset
  6571
    lightValue onChangeEvaluate:shiftAction.
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6572
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6573
    bindings at:#saturationAmount put:(saturationValue := 100 asValue).
1656
f5c0716efd78 menu labels
Claus Gittinger <cg@exept.de>
parents: 1652
diff changeset
  6574
    saturationValue onChangeEvaluate:shiftAction.
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6575
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6576
    bindings at:#acceptChannel put:acceptChannel.
1652
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6577
    bindings at:#hlsColor put:avgColorHolder.
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6578
    bindings at:#previewImageHolder put:previewImageHolder.
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6579
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6580
    (self openDialogInterface:#changeHLSDialogSpec withBindings:bindings) 
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6581
    ifFalse:[ 
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6582
        anyChange ifTrue:[
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6583
            imageEditView undo
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6584
        ]
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6585
    ].
1923
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6586
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6587
    (p := shiftProcess) notNil ifTrue:[
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6588
        p waitUntilTerminated.
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6589
    ].
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6590
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6591
    anyChange ifTrue:[
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6592
        self updateImage.
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6593
        self updateImagePreView.
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6594
    ].
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6595
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6596
    "Modified: / 28-08-2017 / 13:05:35 / cg"
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6597
!
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6598
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6599
changeHLSOfColors:colorsToShift
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6600
    "interactive Hue/Light/Saturation editing"
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6601
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6602
    |bindings hueShift lightValue saturationValue originalColormap firstChange acceptChannel 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6603
     shiftAction avgColorHolder avgColor shiftedColor shiftProcess readySema
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6604
     originalPixels p previewImage previewImageHolder originalPreviewColormap originalPreviewPixels
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6605
     anyChange |
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6606
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6607
    avgColorHolder := nil asValue.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6608
    previewImageHolder := nil asValue.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6609
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6610
    "/
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6611
    "/ compute the averageColor in the background (while building dialog and asking user)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6612
    "/
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6613
    readySema := Semaphore new.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6614
    [
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6615
        |image red green blue|
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6616
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6617
        image := imageEditView image.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6618
        originalColormap := image colorMap copy.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6619
        originalPixels := image bits.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6620
        red := (colorsToShift collect:[:clr | clr red]) average.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6621
        green := (colorsToShift collect:[:clr | clr green]) average.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6622
        blue := (colorsToShift collect:[:clr | clr blue]) average.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6623
        avgColor := Color red:red green:green blue:blue.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6624
        avgColorHolder value:avgColor.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6625
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6626
        previewImage := self image magnifiedPreservingRatioTo:100@100.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6627
        previewImageHolder value: previewImage.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6628
        originalPreviewColormap := previewImage colorMap copy.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6629
        originalPreviewPixels := previewImage bits.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6630
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6631
        readySema signal.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6632
    ] forkAt:7.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6633
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6634
    acceptChannel := TriggerValue new.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6635
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6636
    firstChange := true.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6637
    anyChange := false.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6638
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6639
    shiftedColor := [:clr :hShift :lFactor :sFactor |
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6640
                        Color 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6641
                                hue:((clr hue) ? 0 + hShift) 
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6642
                                light:((clr light * lFactor) min:100)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6643
                                saturation:((clr saturation * sFactor) min:100)].
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6644
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6645
    shiftAction := 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6646
        [
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6647
            |hShift lFactor sFactor|
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6648
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6649
            acceptChannel value:true.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6650
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6651
            firstChange ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6652
                imageEditView makeUndo.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6653
                firstChange := false.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6654
                anyChange := true.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6655
            ].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6656
            readySema notNil ifTrue:[readySema wait. readySema := nil].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6657
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6658
            hShift := hueShift value.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6659
            lFactor := lightValue value.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6660
            sFactor := saturationValue value.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6661
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6662
            avgColorHolder value:(shiftedColor value:avgColor value:hShift value:lFactor value:sFactor).
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6663
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6664
            previewImage
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6665
                colorMap:originalPreviewColormap copy;
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6666
                bits:originalPreviewPixels copy;
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6667
                release;
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6668
                colorMapProcessing:[:clr | 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6669
                    (colorsToShift includes:clr) ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6670
                        shiftedColor value:clr value:hShift value:lFactor value:sFactor.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6671
                    ] ifFalse:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6672
                        clr
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6673
                    ]
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6674
                ].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6675
            previewImageHolder value:nil; value:previewImage.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6676
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6677
            shiftProcess notNil ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6678
                shiftProcess terminate.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6679
                shiftProcess waitUntilTerminated.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6680
                shiftProcess := nil.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6681
            ].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6682
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6683
            shiftProcess := 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6684
                [
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6685
                    [
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6686
                        imageEditView image 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6687
                            colorMap:originalColormap copy;
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6688
                            bits:originalPixels copy;
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6689
                            release;
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6690
                            colorMapProcessing:[:clr | 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6691
                                (colorsToShift includes:clr) ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6692
                                    shiftedColor value:clr value:hShift value:lFactor value:sFactor.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6693
                                ] ifFalse:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6694
                                    clr
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6695
                                ]
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6696
                            ].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6697
                        self updateImage.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6698
                        self updateInfoLabel.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6699
                        self updateImagePreView.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6700
                    ] ensure:[ shiftProcess := nil ].    
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6701
                ] forkAt:7.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6702
        ].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6703
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6704
    bindings := IdentityDictionary new.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6705
    bindings at:#hueShiftAmount put:(hueShift := 0 asValue).
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6706
    hueShift onChangeEvaluate:shiftAction.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6707
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6708
    bindings at:#lightAmount put:(lightValue := 100 asValue).
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6709
    lightValue onChangeEvaluate:shiftAction.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6710
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6711
    bindings at:#saturationAmount put:(saturationValue := 100 asValue).
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6712
    saturationValue onChangeEvaluate:shiftAction.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6713
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6714
    bindings at:#acceptChannel put:acceptChannel.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6715
    bindings at:#hlsColor put:avgColorHolder.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6716
    bindings at:#previewImageHolder put:previewImageHolder.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6717
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6718
    (self openDialogInterface:#changeHLSDialogSpec withBindings:bindings) 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6719
    ifFalse:[ 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6720
        anyChange ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6721
            imageEditView undo
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6722
        ]
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6723
    ].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6724
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6725
    (p := shiftProcess) notNil ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6726
        p waitUntilTerminated.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6727
    ].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6728
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6729
    anyChange ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6730
        self updateImage.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6731
        self updateImagePreView.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6732
    ].
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6733
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6734
    "Modified (comment): / 28-08-2017 / 13:04:44 / cg"
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6735
!
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6736
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6737
clearColormapEntry0AndMaskedPixels
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6738
    "ensure that there is a colorMap entry with 0/0/0 at position
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6739
     0 and then clear all masked pixels (to pixelValue 0).
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6740
     This is required for windows icons to be really transparent"
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6741
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6742
    |index colorMap| 
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6743
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6744
    self nonUndoableCompressColorMap.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6745
    
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6746
    colorMap := self image colorMap.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6747
    (colorMap includes:(Color black)) ifFalse:[
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6748
        self addColorToColormap:(Color black) undoable:false.
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6749
        colorMap := self image colorMap.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6750
    ].
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6751
    index := colorMap indexOf:(Color black).
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6752
    index == 1 ifFalse:[
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6753
        self nonUndoableSortColorMapWith:self sortBlockForColorsByRGB.
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6754
        colorMap := self image colorMap.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6755
    ].
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6756
    self nonUndoableClearMaskedPixels
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6757
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6758
    "Modified: / 31-08-2017 / 14:30:28 / cg"
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6759
!
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6760
1403
26707fae4b93 compressColorMap
Claus Gittinger <cg@exept.de>
parents: 1398
diff changeset
  6761
clearMaskedPixels
26707fae4b93 compressColorMap
Claus Gittinger <cg@exept.de>
parents: 1398
diff changeset
  6762
    "clear all masked pixels (to pixelValue 0)"
26707fae4b93 compressColorMap
Claus Gittinger <cg@exept.de>
parents: 1398
diff changeset
  6763
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6764
    |newImage| 
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6765
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6766
    newImage := self image clearMaskedPixels.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6767
    0 to:newImage height - 1 do:[:y |
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6768
        0 to:newImage width - 1 do:[:x |
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6769
            (newImage maskAtX:x y:y) == 0 ifTrue:[
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6770
                newImage pixelAtX:x y:y put:0
1460
89549732a2c8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1459
diff changeset
  6771
            ]
1403
26707fae4b93 compressColorMap
Claus Gittinger <cg@exept.de>
parents: 1398
diff changeset
  6772
        ]
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6773
    ].
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6774
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6775
    (imageEditView image:newImage) notNil ifTrue:[
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6776
        self fetchImageData.
1403
26707fae4b93 compressColorMap
Claus Gittinger <cg@exept.de>
parents: 1398
diff changeset
  6777
    ]
26707fae4b93 compressColorMap
Claus Gittinger <cg@exept.de>
parents: 1398
diff changeset
  6778
!
26707fae4b93 compressColorMap
Claus Gittinger <cg@exept.de>
parents: 1398
diff changeset
  6779
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6780
clipBoardColor
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6781
    "return the color in the clipboard, or nil, if there is none.
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6782
     If there is none, beep (if user's settings allow it)"
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6783
     
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6784
    |clr|
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6785
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6786
    clr := imageEditView getClipboardObject.
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6787
    clr isColor ifFalse:[
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6788
        UserPreferences current beepInEditor ifTrue:[                
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6789
            self window beep.
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6790
        ].
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6791
        ^ nil
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6792
    ].
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6793
    ^ clr
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6794
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6795
    "Created: / 08-10-2017 / 09:02:14 / cg"
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6796
!
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6797
945
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  6798
colorMapChanged
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  6799
    |img|
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  6800
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  6801
    img := self image.
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  6802
    img release.
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  6803
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  6804
    self imageEditView invalidate.
960
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6805
    self imagePreView invalidate.
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6806
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6807
"/    (imageEditView image:img) notNil ifTrue:[
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6808
"/        self updateLabelsAndHistory.
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6809
"/        self imagePreView image:img
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6810
"/    ]
945
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  6811
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  6812
    "Created: / 7.8.1998 / 22:26:10 / cg"
960
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6813
    "Modified: / 18.8.1998 / 17:08:55 / cg"
945
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  6814
!
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  6815
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  6816
colorMapMode:aMode
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6817
    "calculates a new color map for the image from aMode.
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6818
     This might involve the computation of a colormap 
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6819
     (if depth is smaller)"
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6820
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6821
    |depth numColors newColorMap newImage 
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6822
     oldImage image newColors realColorMap oldFileName
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  6823
     usedColors useNearest usageCounts tmpBits tmpMap quest
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  6824
     prevMode maskThreshold maskImage| 
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6825
3433
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  6826
    oldImage := self image.
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  6827
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  6828
    "/ rubbish; the mode is already changed
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  6829
    "/ prevMode := colorMapMode value.
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  6830
    prevMode := self colorMapModeFromImage:oldImage. 
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  6831
    prevMode == aMode ifTrue:[^ self].
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  6832
    
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6833
    self withExecuteCursorDo:[
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6834
        newColorMap := self class listOfColorMaps at:aMode.
3230
Claus Gittinger <cg@exept.de>
parents: 3227
diff changeset
  6835
        (aMode == #depth32 or:[aMode == #masked32]) ifTrue:[
2572
1c09be361688 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2571
diff changeset
  6836
            depth := 32. 
1c09be361688 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2571
diff changeset
  6837
        ] ifFalse:[
3230
Claus Gittinger <cg@exept.de>
parents: 3227
diff changeset
  6838
            (aMode == #depth24 or:[aMode == #masked24]) ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 3227
diff changeset
  6839
                depth := 24. 
Claus Gittinger <cg@exept.de>
parents: 3227
diff changeset
  6840
            ] ifFalse:[
3370
c88532134a2b #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3367
diff changeset
  6841
                (aMode == #depth16 or:[aMode == #masked16]) ifTrue:[
c88532134a2b #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3367
diff changeset
  6842
                    depth := 16. 
c88532134a2b #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3367
diff changeset
  6843
                ] ifFalse:[
c88532134a2b #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3367
diff changeset
  6844
                    depth := (newColorMap size log:2) asInteger. 
c88532134a2b #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3367
diff changeset
  6845
                ].
3230
Claus Gittinger <cg@exept.de>
parents: 3227
diff changeset
  6846
            ].
2572
1c09be361688 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2571
diff changeset
  6847
        ].
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6848
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6849
        useNearest := false.
928
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  6850
        depth == 1 ifTrue:[
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  6851
            quest := 'Keep colormap (or use standard B&W)'
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  6852
        ] ifFalse:[
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  6853
            prevMode isNil ifTrue:[
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  6854
                quest := 'Compute colormap (or use standard)'
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  6855
            ] ifFalse:[
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  6856
                quest := 'Keep colormap (or use standard)'
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  6857
            ]
928
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  6858
        ].
3433
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  6859
        
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  6860
        "/ currently always true!!
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  6861
        ((prevMode = aMode)
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6862
          or:[depth > oldImage depth
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6863
          or:[true "self confirm:(resources string:quest)"]]
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6864
        ) ifTrue:[
1937
73fb270a4da9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1936
diff changeset
  6865
            (newColorMap isOrderedCollection or:[newColorMap isFixedPalette not]) ifTrue:[
1935
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6866
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6867
                "/ keep the colormap
3355
47dfcea38127 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3349
diff changeset
  6868
                "/ newColorMap atAllPut:Color black.
1935
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6869
                depth > oldImage depth ifTrue:[
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6870
                    "/ easy - simply copy the part
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6871
                    numColors := 1 bitShift:oldImage depth.
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6872
                    0 to:numColors-1 do:[:pixel |
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6873
                        newColorMap at:(pixel+1) put:(oldImage colorFromValue:pixel)
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  6874
                    ].
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6875
                ] ifFalse:[
1935
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6876
                    "/ see if all used color fit the new colormap
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6877
                    usedColors := oldImage usedColorsMax:(1 bitShift:depth).
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6878
                    (usedColors notNil and:[usedColors size > (1 bitShift:depth)]) ifTrue:[
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6879
                        usedColors := oldImage realUsedColors
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6880
                    ].
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6881
                    (usedColors notNil and:[usedColors size <= (1 bitShift:depth)]) ifTrue:[
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6882
                        "/ yea - just install them
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6883
                        usedColors asArray keysAndValuesDo:[:idx :clr |
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6884
                            newColorMap at:idx put:clr
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6885
                        ].
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6886
                    ] ifFalse:[
1935
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6887
                        "/ copy over those that are most often used.
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6888
                        oldImage depth < 8 ifTrue:[
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6889
                            tmpBits := ByteArray uninitializedNew:(oldImage width*oldImage height).
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6890
                            oldImage bits
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6891
                                expandPixels:(oldImage depth)
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6892
                                width:oldImage width
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6893
                                height:oldImage height 
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6894
                                into:tmpBits
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6895
                                mapping:nil.
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
  6896
                        ] ifFalse:[
1935
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6897
                            oldImage depth == 8 ifTrue:[
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6898
                                tmpBits := oldImage bits
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6899
                            ] ifFalse:[
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6900
                                colorMapMode value:prevMode.
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6901
                                self findColorMapMode.    
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6902
                                self warn:(resources 
3506
86a5f1bf58fe #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3505
diff changeset
  6903
                                            stringWithCRs:'Too many used colors (%1) in image.\\You should choose one of:\\- convert the image to gray\- reduce the number of colors\- dither to depth\- choose another depth'
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6904
                                            with: oldImage realUsedColors size ).
1935
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6905
                                ^ self
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6906
    "/                            (self confirm:('Too many used colors in image (', oldImage usedColors size printString , ').\\Dither ?' withCRs))
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6907
    "/                            ifFalse:[.
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6908
    "/                                ^ self
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6909
    "/                            ].
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6910
    "/                            self image: (Image newForDepth:depth) fromImage:oldImage.
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6911
    "/                            ^ self.
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6912
                            ]
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6913
                        ].
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6914
                        usageCounts := tmpBits usageCounts.
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6915
                        tmpMap := Array new:usageCounts size.
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6916
                        oldImage colorMap asArray keysAndValuesDo:[:i :clr |
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6917
                            tmpMap at:i put:clr
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6918
                        ].
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6919
                        usageCounts sort:[:a :b | a > b] with:tmpMap.
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6920
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6921
                        1 to:(1 bitShift:depth) do:[:idx |
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6922
                            newColorMap at:idx put:(tmpMap at:idx)
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6923
                        ].
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6924
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6925
                        useNearest := Dialog 
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6926
                                            confirmWithCancel:(resources 
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6927
                                                                  stringWithCRs:'Image requires %1 colors.\ColorMap has only space for %2\\Use nearest (or map to first color) ?'
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6928
                                                                  with:usedColors size
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6929
                                                                  with:(1 bitShift:depth))
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6930
                                            labels:(resources array:#('Cancel' 'First' 'Nearest')).
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6931
                        useNearest isNil ifTrue:[
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  6932
                            colorMapMode value:prevMode.
1935
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6933
                            ^ self   "/ cancel
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6934
                        ].
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6935
                    ]
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6936
                ]
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6937
            ]
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6938
        ] ifFalse:[
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6939
            "/ standard colormap
921
a5aca21ea803 also allow nearest-color mode for standard colormap.
Claus Gittinger <cg@exept.de>
parents: 920
diff changeset
  6940
            usedColors := oldImage usedColors.
a5aca21ea803 also allow nearest-color mode for standard colormap.
Claus Gittinger <cg@exept.de>
parents: 920
diff changeset
  6941
            (usedColors conform:[:clr | newColorMap includes:clr]) ifFalse:[
a5aca21ea803 also allow nearest-color mode for standard colormap.
Claus Gittinger <cg@exept.de>
parents: 920
diff changeset
  6942
                useNearest := Dialog 
928
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  6943
                                    confirmWithCancel:(resources 
1916
c91c39976bef *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1910
diff changeset
  6944
                                                           stringWithCRs:'Not all colors are present in the new colormap.\\Map missing ones to nearest (or map to first color) ?'
c91c39976bef *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1910
diff changeset
  6945
                                                       ) 
3505
a7aec486480c #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3497
diff changeset
  6946
                                    labels:(resources array:#('Cancel' 'First' 'Nearest')).
921
a5aca21ea803 also allow nearest-color mode for standard colormap.
Claus Gittinger <cg@exept.de>
parents: 920
diff changeset
  6947
                useNearest isNil ifTrue:[
1542
76c2549d878f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1537
diff changeset
  6948
                    colorMapMode value:prevMode.
921
a5aca21ea803 also allow nearest-color mode for standard colormap.
Claus Gittinger <cg@exept.de>
parents: 920
diff changeset
  6949
                    ^ self   "/ cancel
a5aca21ea803 also allow nearest-color mode for standard colormap.
Claus Gittinger <cg@exept.de>
parents: 920
diff changeset
  6950
                ].
a5aca21ea803 also allow nearest-color mode for standard colormap.
Claus Gittinger <cg@exept.de>
parents: 920
diff changeset
  6951
            ].
3356
10e247f059f1 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3355
diff changeset
  6952
            newColorMap := oldImage colorMap.
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6953
        ].
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6954
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6955
        imageEditView makeUndo.
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6956
2260
9a6345ae1c56 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2249
diff changeset
  6957
        newImage := Image newForDepth:depth.
1424
d7367ae7f85e fixed conversion of 3-3-2 8-bit truecolor images
Claus Gittinger <cg@exept.de>
parents: 1411
diff changeset
  6958
        newImage depth:depth.
3230
Claus Gittinger <cg@exept.de>
parents: 3227
diff changeset
  6959
        depth >= 16 ifTrue:[
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6960
            newImage colorMap:nil. 
3230
Claus Gittinger <cg@exept.de>
parents: 3227
diff changeset
  6961
            depth == 32 ifTrue:[
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6962
                newImage samplesPerPixel:4; photometric:#rgba.
3230
Claus Gittinger <cg@exept.de>
parents: 3227
diff changeset
  6963
            ] ifFalse:[    
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6964
                newImage samplesPerPixel:3; photometric:#rgb.
3230
Claus Gittinger <cg@exept.de>
parents: 3227
diff changeset
  6965
            ].    
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6966
        ].   
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6967
        "/ newImage photometric:oldImage photometric.
2260
9a6345ae1c56 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2249
diff changeset
  6968
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6969
        oldFileName := oldImage fileName.
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6970
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  6971
        Image imageErrorSignal handle:[:ex|
3227
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  6972
            "/ arrive here only if not all colors can be represented;
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  6973
            "/ then do a more expensive nearest color search
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  6974
            Color colorErrorSignal handle:[:ex|
1542
76c2549d878f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1537
diff changeset
  6975
                colorMapMode value:prevMode.
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6976
                imageEditView undo.
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  6977
                ^ self warn:(resources string:'Conversion failed !!')
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  6978
            ] do:[
1393
c4a11a7d407f use Image>>newForDepth:
Claus Gittinger <cg@exept.de>
parents: 1392
diff changeset
  6979
                newImage := Image newForDepth:depth.
3103
690eff6e417e class: ImageEditor
Stefan Vogel <sv@exept.de>
parents: 3100
diff changeset
  6980
                newImage 
690eff6e417e class: ImageEditor
Stefan Vogel <sv@exept.de>
parents: 3100
diff changeset
  6981
                    width:oldImage width height:oldImage height depth:depth;
690eff6e417e class: ImageEditor
Stefan Vogel <sv@exept.de>
parents: 3100
diff changeset
  6982
                    colorMap:newColorMap;
690eff6e417e class: ImageEditor
Stefan Vogel <sv@exept.de>
parents: 3100
diff changeset
  6983
                    photometric:#palette;
690eff6e417e class: ImageEditor
Stefan Vogel <sv@exept.de>
parents: 3100
diff changeset
  6984
                    bits:(ByteArray new:(newImage bytesPerRow * newImage height));
690eff6e417e class: ImageEditor
Stefan Vogel <sv@exept.de>
parents: 3100
diff changeset
  6985
                    mask:oldImage mask.
2260
9a6345ae1c56 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2249
diff changeset
  6986
3227
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  6987
                oldImage 
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  6988
                    colorsFromX:0 y:0 
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  6989
                    toX:(oldImage width-1) y:(oldImage height-1) 
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  6990
                    do:[:x :y :clr |
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  6991
                        |newColor|
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  6992
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  6993
                        (newColorMap includes:clr)
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  6994
                            ifTrue: [newColor := clr]
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  6995
                            ifFalse: [
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  6996
                                newColor := clr nearestIn:newColorMap.
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  6997
                                useNearest ifFalse:[
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  6998
                                    (newColor deltaFrom:clr) > 0.5 ifTrue:[
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  6999
                                        newColor := oldImage colorFromValue:0
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7000
                                    ]
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7001
                                ]
3227
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7002
                            ].
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7003
                        newImage colorAtX:x y:y put:newColor.
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7004
                    ].
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7005
                
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7006
                image := newImage
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7007
            ].
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7008
        ] do:[ 
3461
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7009
            |newPhotometric|
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7010
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7011
            depth == 32 ifTrue:[
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7012
                newPhotometric := #rgba.
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7013
            ] ifFalse:[
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7014
                (newColorMap notNil and:[newColorMap isOrderedCollection or:[newColorMap isFixedPalette not]]) ifTrue:[
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7015
                    newPhotometric := #palette
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7016
                ]
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7017
            ]. 
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7018
            image := newImage fromImage:oldImage photometric:newPhotometric.
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7019
            "/ -- nope; keep the newly determined photometric. image photometric:oldImage photometric.
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7020
        ].
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7021
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7022
        (aMode asString startsWith:'mask') ifTrue:[
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7023
            image mask isNil ifTrue:[
3436
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7024
                (oldImage depth == 32 and:[ oldImage photometric == #rgba ]) ifTrue:[
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7025
                    maskImage := ImageMask fromAlphaInImage:oldImage
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7026
                ] ifFalse:[    
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7027
                    false "(Dialog confirm:'Generate mask from black ?' default:false)" ifTrue:[
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7028
                        maskThreshold := 0.1.
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7029
                        maskImage := Depth1Image fromImage:(image asThresholdMonochromeImage:maskThreshold). 
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7030
                    ] ifFalse:[
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7031
                        maskImage := ImageMask extent:image extent.
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7032
                        maskImage bits:(ByteArray 
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7033
                                            new:(maskImage bytesPerRow * maskImage height)
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7034
                                            withAll:16rFF).
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7035
                    ].
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7036
                ].
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7037
                image mask:maskImage.
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7038
            ].
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7039
        ] ifFalse:[ 
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7040
            image mask: nil.
3317
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  7041
            oldImage mask notNil ifTrue:[
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  7042
                newImage depth == 32 ifTrue:[
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  7043
                    newImage computeAlphaValuesFromMask:oldImage mask
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  7044
                ].
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  7045
            ].
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7046
        ]. 
1935
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7047
1937
73fb270a4da9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1936
diff changeset
  7048
        (newColorMap isOrderedCollection or:[newColorMap isFixedPalette not]) ifTrue:[
1935
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7049
            realColorMap := OrderedCollection new.
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7050
            image realColorMap do:[:clr|
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7051
                (realColorMap includes: clr) ifFalse: [realColorMap add: clr]
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7052
            ].
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7053
            newColors := realColorMap copyFrom: 1 to: (newColorMap size min: realColorMap size).
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7054
            newColorMap do:[:clr|
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7055
                ((newColors size < newColorMap size) and: [(newColors includes: clr) not]) 
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7056
                ifTrue:[      
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7057
                    newColors add: clr
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7058
                ]
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7059
            ].                  
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7060
            image colorMap: newColors.   
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7061
        ].
1446
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7062
        image fileName: oldFileName.
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7063
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  7064
        (imageEditView image: image) notNil ifTrue:[
1446
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7065
            self fetchImageData.
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7066
        ]
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7067
    ]
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7068
3506
86a5f1bf58fe #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3505
diff changeset
  7069
    "Modified: / 28-11-2017 / 16:39:03 / cg"
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7070
!
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7071
2192
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7072
colorize
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7073
    "interactive Hue editing"
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7074
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7075
    |bindings hueShift lightValue saturationValue originalColormap firstChange acceptChannel 
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7076
     shiftAction avgColorHolder avgColor shiftedColor shiftProcess readySema
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7077
     originalPixels p|
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7078
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7079
    "/ compute the averageColor in the background (while asking user)
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7080
    readySema := Semaphore new.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7081
    [
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7082
        |image|
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7083
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7084
        image := imageEditView image.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7085
        originalColormap := image colorMap copy.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7086
        avgColor := image averageColor.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7087
        originalPixels := image bits.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7088
        readySema signal.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7089
    ] forkAt:7.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7090
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7091
    acceptChannel := TriggerValue new.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7092
    avgColorHolder := avgColor asValue.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7093
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7094
    firstChange := true.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7095
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7096
    shiftedColor := [:clr :hShift :lFactor :sFactor |
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7097
                        Color 
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7098
                                hue:((clr hue) ? 0 + hShift) 
3173
801e6bfe2581 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3172
diff changeset
  7099
                                light:((clr light * lFactor / 100) min:100)
801e6bfe2581 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3172
diff changeset
  7100
                                saturation:(((clr saturation max:20) * sFactor / 100) min:100)].
2192
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7101
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7102
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7103
    shiftAction := 
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7104
        [
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7105
            |hShift lFactor sFactor|
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7106
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7107
            acceptChannel value:true.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7108
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7109
            firstChange ifTrue:[
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7110
                imageEditView makeUndo.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7111
                firstChange := false.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7112
            ].
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7113
            readySema notNil ifTrue:[readySema wait. readySema := nil].
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7114
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7115
            hShift := hueShift value.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7116
            lFactor := lightValue value.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7117
            sFactor := saturationValue value.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7118
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7119
            avgColorHolder value:(shiftedColor value:avgColor value:hShift value:lFactor value:sFactor).
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7120
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7121
            shiftProcess notNil ifTrue:[
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7122
                shiftProcess terminate.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7123
                shiftProcess waitUntilTerminated.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7124
                shiftProcess := nil.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7125
            ].
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7126
            shiftProcess := 
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7127
                [
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7128
                    [
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7129
                        imageEditView image 
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7130
                            colorMap:originalColormap copy;
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7131
                            bits:originalPixels copy;
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7132
                            release;
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7133
                            colorMapProcessing:[:clr | shiftedColor value:clr value:hShift value:lFactor value:sFactor].
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7134
                        self updateImage.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7135
                        self updateInfoLabel.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7136
                        self updateImagePreView.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7137
                    ] ensure:[ shiftProcess := nil ].    
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7138
                ] forkAt:7.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7139
        ].
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7140
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7141
    bindings := IdentityDictionary new.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7142
    bindings at:#hueShiftAmount put:(hueShift := 0 asValue).
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7143
    hueShift onChangeEvaluate:shiftAction.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7144
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7145
    bindings at:#lightAmount put:(lightValue := 100 asValue).
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7146
    lightValue onChangeEvaluate:shiftAction.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7147
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7148
    bindings at:#saturationAmount put:(saturationValue := 100 asValue).
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7149
    saturationValue onChangeEvaluate:shiftAction.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7150
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7151
    bindings at:#acceptChannel put:acceptChannel.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7152
    bindings at:#hlsColor put:avgColorHolder.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7153
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7154
    (self openDialogInterface:#changeHLSDialogSpec withBindings:bindings) 
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7155
    ifFalse:[ 
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7156
        firstChange ~~ true ifTrue:[
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7157
            imageEditView undo
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7158
        ]
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7159
    ].
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7160
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7161
    (p := shiftProcess) notNil ifTrue:[
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7162
        p waitUntilTerminated.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7163
    ].
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7164
    self updateImage.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7165
    self updateImagePreView.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7166
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7167
    "Created: / 01-11-2007 / 23:27:37 / cg"
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7168
!
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7169
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7170
compressColorMap
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7171
    "calculates a new color map for the image, using only used colors"
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7172
2893
feb4eeba44ad changed:
Stefan Vogel <sv@exept.de>
parents: 2884
diff changeset
  7173
    |newImage| 
feb4eeba44ad changed:
Stefan Vogel <sv@exept.de>
parents: 2884
diff changeset
  7174
feb4eeba44ad changed:
Stefan Vogel <sv@exept.de>
parents: 2884
diff changeset
  7175
    newImage := self image.
feb4eeba44ad changed:
Stefan Vogel <sv@exept.de>
parents: 2884
diff changeset
  7176
    newImage compressColorMap.
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7177
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7178
    (imageEditView image:newImage) notNil ifTrue:[
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7179
        self fetchImageData.
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7180
    ]
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7181
!
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7182
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7183
copyColorFromColormap
1871
42729969c032 set selection interface changed
ca
parents: 1859
diff changeset
  7184
    imageEditView setClipboardObject:(self selectedColorOrNil)
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7185
!
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7186
2174
7beca4d9c93a color-double-click
Claus Gittinger <cg@exept.de>
parents: 2155
diff changeset
  7187
doubleClickOnColor:aColorIndex
7beca4d9c93a color-double-click
Claus Gittinger <cg@exept.de>
parents: 2155
diff changeset
  7188
    self editSelectedColor.
7beca4d9c93a color-double-click
Claus Gittinger <cg@exept.de>
parents: 2155
diff changeset
  7189
7beca4d9c93a color-double-click
Claus Gittinger <cg@exept.de>
parents: 2155
diff changeset
  7190
    "Created: / 22-07-2007 / 13:14:37 / cg"
7beca4d9c93a color-double-click
Claus Gittinger <cg@exept.de>
parents: 2155
diff changeset
  7191
!
7beca4d9c93a color-double-click
Claus Gittinger <cg@exept.de>
parents: 2155
diff changeset
  7192
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7193
editSelectedColor
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7194
    self processSelectedColorWith:[:clr | 
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7195
        |editor|
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7196
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7197
        editor := ColorEditDialog new.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7198
        editor color:clr.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7199
        editor open.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7200
        editor accepted ifFalse:[
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7201
            AbortOperationRequest raise.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7202
        ].
3180
9ee8f0e74b96 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3173
diff changeset
  7203
        editor color
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7204
    ]
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7205
!
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7206
1446
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7207
fetchImageData
1460
89549732a2c8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1459
diff changeset
  7208
    |image|
89549732a2c8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1459
diff changeset
  7209
89549732a2c8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1459
diff changeset
  7210
    (image := imageEditView image) notNil ifTrue:[
89549732a2c8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1459
diff changeset
  7211
        self findColorMapMode.
89549732a2c8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1459
diff changeset
  7212
        self updateLabelsAndHistory.
3463
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7213
        self updateInfoLabel.
1460
89549732a2c8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1459
diff changeset
  7214
    ]
3463
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7215
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7216
    "Modified: / 24-08-2017 / 18:20:37 / cg"
1446
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7217
!
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7218
1544
1048b548abfa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1542
diff changeset
  7219
inspectColor
2573
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7220
    |clrIndex clr|
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7221
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7222
    self hasColormap ifFalse:[
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7223
        clr := self selectedColorOrNil
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7224
    ] ifTrue:[
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7225
        clrIndex := self selectedColorIndexOrNil.
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7226
        clrIndex isNil ifTrue:[
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7227
            ^ self
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7228
        ].
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7229
        clr := self image colorFromValue:clrIndex-1
1544
1048b548abfa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1542
diff changeset
  7230
    ].
2573
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7231
    clr inspect
1544
1048b548abfa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1542
diff changeset
  7232
!
1048b548abfa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1542
diff changeset
  7233
2651
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  7234
inspectColormap
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  7235
    self hasColormap ifTrue:[
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  7236
        self image colorMap inspect
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  7237
    ].
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  7238
!
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  7239
1598
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  7240
makeBrighter
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7241
    self updateImageAfterDoing:#makeBrighter.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7242
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7243
    "Modified: / 31-08-2017 / 12:16:30 / cg"
1598
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  7244
!
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  7245
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  7246
makeDarker
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7247
    self updateImageAfterDoing:#makeDarker.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7248
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7249
    "Modified: / 31-08-2017 / 12:16:24 / cg"
1598
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  7250
!
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  7251
1926
b3d2dab90f9b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1925
diff changeset
  7252
makeGrayScaleImage
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7253
    self updateImageAfterDoing:#makeGrayScaleImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7254
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7255
    "Modified: / 31-08-2017 / 12:16:15 / cg"
1436
180804d7c28f added make grayScale
Claus Gittinger <cg@exept.de>
parents: 1435
diff changeset
  7256
!
180804d7c28f added make grayScale
Claus Gittinger <cg@exept.de>
parents: 1435
diff changeset
  7257
1446
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7258
makeSelectedColorBrighter
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7259
    self processSelectedColorsWith:[:clr | clr lightened]
1446
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7260
!
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7261
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7262
makeSelectedColorDarker
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7263
    self processSelectedColorsWith:[:clr | clr darkened]
1446
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7264
!
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7265
1884
2c4d13ecd7ed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1883
diff changeset
  7266
makeSelectedColorGray
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7267
    self processSelectedColorsWith:[:clr | Color brightness:(clr brightness)]
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7268
!
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7269
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7270
makeSelectedColorShifted
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7271
    "shift the selected color (in the colormap)
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7272
     using the hls/rgb shifting slider dialog"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7273
     
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7274
    |cMap colors cmapOffset|
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7275
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7276
    cMap := self image colorMap.
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7277
    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7278
    "/ if there is a mask, it is at position 1 in the table
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  7279
    cmapOffset := self hasTransparentColorInColorList ifTrue:[1] ifFalse:[0].
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7280
    colors := self selectedColors value collect:[:idx | cMap at:idx-cmapOffset].
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7281
    self changeHLSOfColors:colors.
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7282
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  7283
    "Modified: / 05-09-2017 / 09:03:47 / cg"
1884
2c4d13ecd7ed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1883
diff changeset
  7284
!
2c4d13ecd7ed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1883
diff changeset
  7285
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7286
makeSlightlyBrighter
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7287
    self updateImageAfterDoing:#makeSlightlyBrighter.
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7288
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7289
    "Created: / 24-11-2010 / 11:06:11 / cg"
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7290
    "Modified: / 31-08-2017 / 12:16:01 / cg"
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7291
!
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7292
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7293
makeSlightlyDarker
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7294
    self updateImageAfterDoing:#makeSlightlyDarker.
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7295
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7296
    "Created: / 24-11-2010 / 11:06:23 / cg"
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7297
    "Modified: / 31-08-2017 / 12:15:55 / cg"
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7298
!
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7299
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7300
menu_clearColormapEntry0AndMaskedPixels
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7301
    "ensure that there is a colorMap entry with 0/0/0 at position
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7302
     0 and then clear all masked pixels (to pixelValue 0)"
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7303
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7304
    imageEditView makeUndo.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7305
    self withExecuteCursorDo:[
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7306
        self nonUndoableClearColormapEntry0AndMaskedPixels
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7307
    ]
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7308
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7309
    "Modified: / 31-08-2017 / 14:31:21 / cg"
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7310
!
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7311
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7312
menu_clearMaskedPixels
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7313
    "clear all masked pixels (to pixelValue 0)"
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7314
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7315
    imageEditView makeUndo.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7316
    self withExecuteCursorDo:[
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7317
        self nonUndoableClearMaskedPixels
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7318
    ]
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7319
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7320
    "Modified: / 31-08-2017 / 14:23:20 / cg"
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7321
!
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7322
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7323
menu_compressColorMap
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7324
    "calculates a new color map for the image, using only used colors"
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7325
2893
feb4eeba44ad changed:
Stefan Vogel <sv@exept.de>
parents: 2884
diff changeset
  7326
    |depth oldImage usedColors colorMap| 
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7327
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7328
    oldImage := self image.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7329
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7330
    oldImage photometric ~~ #palette ifTrue:[
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7331
        self information:'Compress colorMap: Only palette images have colormaps.'.
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7332
        ^ self
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7333
    ].
2893
feb4eeba44ad changed:
Stefan Vogel <sv@exept.de>
parents: 2884
diff changeset
  7334
    depth := oldImage depth.
3103
690eff6e417e class: ImageEditor
Stefan Vogel <sv@exept.de>
parents: 3100
diff changeset
  7335
    colorMap := oldImage colorMap asArray.
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7336
    usedColors := oldImage realUsedColors.
2893
feb4eeba44ad changed:
Stefan Vogel <sv@exept.de>
parents: 2884
diff changeset
  7337
    usedColors size == colorMap size ifTrue:[
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7338
        self information:'Compress colorMap: Colormap already compressed - no compression.'.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7339
        ^ self
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7340
    ].
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7341
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7342
    imageEditView makeUndo.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7343
    self withExecuteCursorDo:[
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7344
        self nonUndoableCompressColorMap
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7345
    ]
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7346
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7347
    "Modified: / 31-08-2017 / 14:22:19 / cg"
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7348
!
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7349
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7350
menu_copyMask
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7351
    |mask|
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7352
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7353
    mask := self image mask.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7354
    MaskClipboard := mask subImageIn: (0@0 extent:mask extent).
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7355
!
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7356
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7357
menu_pasteMask
1480
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7358
    |img mask|
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7359
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7360
    imageEditView makeUndo.
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7361
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7362
    img := self image.
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7363
    mask := img mask.
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7364
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7365
    mask 
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7366
         copyFrom:MaskClipboard
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7367
         x:0 y:0
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7368
         toX:0 y:0 
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7369
         width:(mask width min:MaskClipboard width)
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7370
         height:(mask height min:MaskClipboard height).
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7371
    img mask:mask.
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7372
    (imageEditView image:img copy) notNil ifTrue:[
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7373
        self fetchImageData.
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7374
    ]
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7375
!
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7376
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7377
menu_sortColorMap
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7378
    "calculates a new color map for the image, sorting colors"
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7379
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7380
    self menu_sortColorMapWith:self sortBlockForColors
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7381
!
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7382
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7383
menu_sortColorMapWith:sortBlock
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7384
    "calculates a new color map for the image, sorting colors"
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7385
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7386
    self image photometric ~~ #palette ifTrue:[
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7387
        self information:'Compress colorMap: Only palette images have colormaps.'.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7388
        ^ self
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7389
    ].
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7390
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7391
    imageEditView makeUndo.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7392
    self withExecuteCursorDo:[
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7393
        self nonUndoableSortColorMapWith:sortBlock
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7394
    ]
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7395
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7396
    "Created: / 30-09-1998 / 23:51:23 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7397
    "Modified: / 31-08-2017 / 14:20:14 / cg"
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7398
!
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7399
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7400
pasteColorIntoColormap
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7401
    |clipBoardColor cmap|
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7402
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7403
    (clipBoardColor := self clipBoardColor) isNil ifTrue:[                
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7404
        ^ self
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7405
    ].
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7406
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7407
    cmap := self image colorMap.
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7408
    (cmap isNil or:[cmap isMappedPalette or:[cmap isFixedPalette]]) ifTrue:[
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7409
        drawingColormap isNil ifTrue:[
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7410
            drawingColormap := #()
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7411
        ].
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7412
        drawingColormap := drawingColormap copyWith:clipBoardColor.
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7413
        self selectedColors value:drawingColormap size.
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7414
        ^ self.
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7415
    ].
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7416
    
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7417
    self processSelectedColorWith:[:clr | clipBoardColor]
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7418
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7419
    "Modified (format): / 08-10-2017 / 09:03:59 / cg"
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7420
!
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7421
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7422
pickAndAddColorToColormap
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7423
    self addColorToColormap:(Color fromUser) undoable:true
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7424
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7425
    "Modified: / 31-08-2017 / 14:30:22 / cg"
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7426
!
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7427
1933
2fe701f721ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1931
diff changeset
  7428
pickAndPasteColor
2fe701f721ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1931
diff changeset
  7429
    self pickColor.
2fe701f721ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1931
diff changeset
  7430
    self pasteColorIntoColormap.
2fe701f721ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1931
diff changeset
  7431
!
2fe701f721ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1931
diff changeset
  7432
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7433
pickColor
1871
42729969c032 set selection interface changed
ca
parents: 1859
diff changeset
  7434
    imageEditView setClipboardObject:(Color fromUser)
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7435
!
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7436
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7437
processSelectedColorWith:aBlock
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7438
    "undoable color processing: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7439
     the selected color will be replaced by the value of aBlock"
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7440
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7441
    self processSelectedColorsWith:aBlock.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7442
!
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7443
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7444
processSelectedColorsWith:aBlock
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7445
    "undoable color processing: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7446
     the selected colors will be replaced by the value of aBlock 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7447
     (which gets a color vector and must return a color vector)"
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7448
3281
15b8e734190a #OTHER by stefan
Stefan Vogel <sv@exept.de>
parents: 3253
diff changeset
  7449
    |img cMap modifiedColormap oldColors newImage selectedColorIndices newColors maskOffset|
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7450
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7451
    selectedColorIndices := self selectedColors value.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7452
    selectedColorIndices isEmptyOrNil ifTrue:[^ self].
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7453
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7454
    img := self image.
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  7455
    self hasTransparentColorInColorList ifTrue:[
3281
15b8e734190a #OTHER by stefan
Stefan Vogel <sv@exept.de>
parents: 3253
diff changeset
  7456
        maskOffset := 1.
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7457
    ] ifFalse:[
3281
15b8e734190a #OTHER by stefan
Stefan Vogel <sv@exept.de>
parents: 3253
diff changeset
  7458
        maskOffset := 0.
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7459
    ].
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7460
    cMap := img colorMap.
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  7461
    (cMap isNil) ifTrue:[
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7462
        oldColors := drawingColormap
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7463
    ] ifFalse:[    
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  7464
        (cMap isMappedPalette or:[cMap isFixedPalette]) ifTrue:[
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  7465
            oldColors := cMap asArray
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  7466
        ] ifFalse:[    
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  7467
            oldColors := selectedColorIndices collect:[:idx | cMap at:idx-maskOffset].
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  7468
        ].
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7469
    ].
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7470
    imageEditView makeUndo.
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7471
2992
a970017936e7 Refactor:
Stefan Vogel <sv@exept.de>
parents: 2945
diff changeset
  7472
    modifiedColormap := cMap asNewArray.
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7473
    selectedColorIndices max > modifiedColormap size ifTrue:[
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7474
        |t|
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7475
        t := Array new:selectedColorIndices max.
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7476
        t replaceFrom:1 with:modifiedColormap.
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7477
        modifiedColormap := t.
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7478
    ].
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7479
    
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7480
    newColors := oldColors collect:aBlock.
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  7481
    selectedColorIndices do:[:idx |
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7482
        modifiedColormap at:idx-maskOffset put:(newColors at:idx-maskOffset ifAbsent:[Color black])
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7483
    ].
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7484
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7485
    newImage := img species new
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7486
                    width:img width
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7487
                    height:img height
1843
771731481a20 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1842
diff changeset
  7488
                    depth:img depth
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7489
                    fromArray:img bits.
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7490
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  7491
    (cMap isNil) ifTrue:[
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7492
        "/ only a dummy...
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7493
    ] ifFalse:[    
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7494
        newImage colorMap:modifiedColormap.  
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  7495
        newImage photometric:#palette.  
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7496
    ].
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7497
    newImage fileName:img fileName.
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7498
    newImage mask:(img mask copy).
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7499
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7500
    (imageEditView image:newImage) notNil ifTrue:[
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7501
        self fetchImageData.
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7502
    ].
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7503
    self selectedColors value:selectedColorIndices.
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7504
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7505
    "Modified: / 08-10-2017 / 09:20:13 / cg"
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7506
!
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7507
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7508
reduceNumberOfColors
3464
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  7509
    "reduce by masking off r/g/b bits"
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  7510
1727
8c626d784494 color reduction algorithm fixed
Claus Gittinger <cg@exept.de>
parents: 1716
diff changeset
  7511
    |s n anyChange img usedColors|
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7512
2817
Claus Gittinger <cg@exept.de>
parents: 2814
diff changeset
  7513
    s := Dialog request:'Number of color bits to strip (1-7) ?' initialAnswer:3.
1435
f39893848245 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1433
diff changeset
  7514
    s size == 0 ifTrue:[^ self].
1934
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7515
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7516
    n := Integer readFrom:s onError:0.
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7517
    (n between:1 and:7) ifFalse:[
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7518
        Dialog warn:'Image unchanged'.
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7519
        ^ self
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7520
    ].
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7521
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7522
    self withExecuteCursorDo:[
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7523
        anyChange := imageEditView reduceColorResolutionBy:n.
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7524
        anyChange ifFalse:[
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7525
            Dialog warn:'Image unchanged'.
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7526
        ] ifTrue:[
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7527
            img := imageEditView image.
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7528
            imageEditView image:img.
1446
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7529
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7530
            self fetchImageData.
1727
8c626d784494 color reduction algorithm fixed
Claus Gittinger <cg@exept.de>
parents: 1716
diff changeset
  7531
            usedColors := img usedColorsMax:10000.
8c626d784494 color reduction algorithm fixed
Claus Gittinger <cg@exept.de>
parents: 1716
diff changeset
  7532
            usedColors size == 10000 ifTrue:[
8c626d784494 color reduction algorithm fixed
Claus Gittinger <cg@exept.de>
parents: 1716
diff changeset
  7533
                Dialog information:('>= ' , usedColors size printString , ' colors used.')
8c626d784494 color reduction algorithm fixed
Claus Gittinger <cg@exept.de>
parents: 1716
diff changeset
  7534
            ] ifFalse:[
8c626d784494 color reduction algorithm fixed
Claus Gittinger <cg@exept.de>
parents: 1716
diff changeset
  7535
                Dialog information:(usedColors size printString , ' colors used.')
8c626d784494 color reduction algorithm fixed
Claus Gittinger <cg@exept.de>
parents: 1716
diff changeset
  7536
            ]
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7537
        ]
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7538
    ].
2817
Claus Gittinger <cg@exept.de>
parents: 2814
diff changeset
  7539
Claus Gittinger <cg@exept.de>
parents: 2814
diff changeset
  7540
    "Modified: / 29-10-2010 / 18:08:01 / cg"
3464
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  7541
    "Modified (comment): / 24-08-2017 / 20:50:28 / cg"
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7542
!
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7543
1930
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  7544
reduceNumberOfColors2
3464
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  7545
    "reduce by rounding r/g/b channel values"
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  7546
    
1938
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7547
    |s rndR rndG rndB usedColors image newImage|
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7548
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7549
    s := Dialog request:'Rounding Interval red (2..) ?' initialAnswer:4.
1934
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7550
    s size == 0 ifTrue:[^ self].
1938
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7551
    rndR := Integer readFrom:s onError:0.
1939
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  7552
1938
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7553
    s := Dialog request:'Rounding Interval green (2..) ?' initialAnswer:2.
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7554
    s size == 0 ifTrue:[^ self].
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7555
    rndG := Integer readFrom:s onError:0.
1939
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  7556
1938
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7557
    s := Dialog request:'Rounding Interval blue (2..) ?' initialAnswer:10.
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7558
    s size == 0 ifTrue:[^ self].
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7559
    rndB := Integer readFrom:s onError:0.
1939
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  7560
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  7561
    ((rndR > 1) or:[(rndG > 1) or:[(rndB > 1)]]) ifFalse:[
1930
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  7562
        Dialog warn:'Image unchanged'.
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  7563
        ^ self
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  7564
    ].
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  7565
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  7566
    self withExecuteCursorDo:[
3463
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7567
        |reduceColor nUsed|
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7568
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7569
        reduceColor :=
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7570
            [:clr |
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7571
                |r g b nr ng nb|
1934
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7572
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7573
                r := clr redByte.
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7574
                g := clr greenByte.
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7575
                b := clr blueByte. 
1938
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7576
                nr := (r roundTo:rndR) min:255.
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7577
                ng := (g roundTo:rndG) min:255.
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7578
                nb := (b roundTo:rndB) min:255. 
1934
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7579
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7580
                Color redByte:nr greenByte:ng blueByte:nb.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7581
            ].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7582
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7583
        image := self image.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7584
        "/ usedColors := image usedColorsMax:4096.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7585
        imageEditView makeUndo.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7586
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7587
        newImage := image copy.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7588
        newImage photometric == #palette ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7589
            newImage colorMap:(image colorMap collect:reduceColor).
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7590
        ] ifFalse:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7591
            image
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7592
                colorsFromX:0 y:0 toX:(image width-1) y:(image height-1) 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7593
                do:[:x :y :clr |
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7594
                    newImage colorAtX:x y:y put:(reduceColor value:clr)
2260
9a6345ae1c56 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2249
diff changeset
  7595
                ].
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7596
        ].
1934
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7597
        imageEditView image:newImage.
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7598
        imageEditView setModified.
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7599
        self updateImage.
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7600
        self updateImagePreView.
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7601
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7602
        self fetchImageData.
3463
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7603
        
1934
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7604
        usedColors := newImage usedColorsMax:10000.
3463
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7605
        nUsed := usedColors size.
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7606
        nUsed == 10000 ifTrue:[
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7607
            Dialog information:('>= ' , nUsed printString , ' colors used.')
1934
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7608
        ] ifFalse:[
3463
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7609
            Dialog information:(nUsed printString , ' colors used.')
1934
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7610
        ]
1930
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  7611
    ].
2054
56352366d94a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2044
diff changeset
  7612
3463
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7613
    "Modified: / 24-08-2017 / 18:25:04 / cg"
3464
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  7614
    "Modified (comment): / 24-08-2017 / 20:50:14 / cg"
1930
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  7615
!
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  7616
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7617
selectColor:aColor
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7618
    |idx img cMap|
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7619
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7620
    aColor isNil ifTrue:[
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7621
        idx := nil.
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7622
    ] ifFalse:[
2791
7d01ac3a20e7 changed: #selectColor:
Claus Gittinger <cg@exept.de>
parents: 2790
diff changeset
  7623
        img := self image.
7d01ac3a20e7 changed: #selectColor:
Claus Gittinger <cg@exept.de>
parents: 2790
diff changeset
  7624
        img notNil ifTrue: [
7d01ac3a20e7 changed: #selectColor:
Claus Gittinger <cg@exept.de>
parents: 2790
diff changeset
  7625
            aColor == Color noColor ifTrue:[
7d01ac3a20e7 changed: #selectColor:
Claus Gittinger <cg@exept.de>
parents: 2790
diff changeset
  7626
                (img mask notNil) ifTrue:[
7d01ac3a20e7 changed: #selectColor:
Claus Gittinger <cg@exept.de>
parents: 2790
diff changeset
  7627
                    idx := 1.
7d01ac3a20e7 changed: #selectColor:
Claus Gittinger <cg@exept.de>
parents: 2790
diff changeset
  7628
                ]
7d01ac3a20e7 changed: #selectColor:
Claus Gittinger <cg@exept.de>
parents: 2790
diff changeset
  7629
            ] ifFalse:[
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7630
                (cMap := self listOfColors) notNil ifTrue:[
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7631
                    idx := cMap indexOf:aColor ifAbsent:nil.
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7632
                ].
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7633
                idx isNil ifTrue:[
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7634
                    "/ should not happen...
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7635
                    (cMap := img colorMap) notNil ifTrue:[
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7636
                        idx := cMap indexOf:aColor ifAbsent:nil.
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7637
                        idx notNil ifTrue:[
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7638
                            img mask notNil ifTrue:[
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7639
                                idx := idx + 1.
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7640
                            ].
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7641
                        ]
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7642
                    ].
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7643
                ].
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7644
            ].
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7645
        ].
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7646
    ].
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7647
    self selectedColors value:{idx}.
2790
2c90a15a0011 changed: #selectColor:
Claus Gittinger <cg@exept.de>
parents: 2771
diff changeset
  7648
2791
7d01ac3a20e7 changed: #selectColor:
Claus Gittinger <cg@exept.de>
parents: 2790
diff changeset
  7649
    "Modified: / 02-07-2010 / 12:06:07 / cg"
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7650
!
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7651
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7652
selectedColorIndexOrNil
2651
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  7653
    |img clrIndex|
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7654
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7655
    img := self image.
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7656
    img isNil ifTrue:[
2764
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
  7657
        "/ self warn:'No Image.'.
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7658
        ^ nil
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7659
    ].
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7660
    clrIndex := self selectionOfColor value.
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  7661
    self hasTransparentColorInColorList ifTrue: [ 
2449
5ef668d71314 changed #selectedColorIndexOrNil
Claus Gittinger <cg@exept.de>
parents: 2447
diff changeset
  7662
        (clrIndex isInteger and:[clrIndex > 1]) ifTrue:[
5ef668d71314 changed #selectedColorIndexOrNil
Claus Gittinger <cg@exept.de>
parents: 2447
diff changeset
  7663
            ^ clrIndex - 1 
5ef668d71314 changed #selectedColorIndexOrNil
Claus Gittinger <cg@exept.de>
parents: 2447
diff changeset
  7664
        ].
5ef668d71314 changed #selectedColorIndexOrNil
Claus Gittinger <cg@exept.de>
parents: 2447
diff changeset
  7665
        ^ nil
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7666
    ].
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7667
    ^ clrIndex
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  7668
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  7669
    "Modified: / 05-09-2017 / 09:04:05 / cg"
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7670
!
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7671
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7672
selectedColorOrNil
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7673
    |cmapIndex img cMap colorList|
1896
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  7674
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  7675
    cmapIndex := self selectedColorIndexOrNil.
1900
41ba86fb1087 cleanup
Claus Gittinger <cg@exept.de>
parents: 1899
diff changeset
  7676
    cmapIndex isNil ifTrue:[^ nil].
2556
736533777318 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2546
diff changeset
  7677
    cmapIndex == 0 ifTrue:[^ nil].
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7678
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7679
    img := self image.
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7680
    cMap := img colorMap.
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7681
    cMap isNil ifTrue:[
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7682
        "/ self warn:(resources stringWithCRs:'Image has no colormap.\Please change the colorMap mode first.').
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7683
        colorList := self listOfColors.
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7684
        colorList notNil ifTrue:[
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7685
            ^ colorList at:cmapIndex ifAbsent:nil
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7686
        ].
1900
41ba86fb1087 cleanup
Claus Gittinger <cg@exept.de>
parents: 1899
diff changeset
  7687
        ^ nil
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7688
    ].
1896
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  7689
    ^ cMap at:cmapIndex.
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7690
!
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7691
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7692
sortColorMap
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7693
    "calculates a new color map for the image, sorting colors"
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7694
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7695
    self nonUndoableSortColorMapWith:self sortBlockForColorsByRGB
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7696
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7697
    "Modified: / 31-08-2017 / 14:20:07 / cg"
1939
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  7698
!
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  7699
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  7700
sortColorMapWith:sortBlock
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7701
    "warning: not undoable
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7702
     calculates a new color map for the image, sorting colors"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7703
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7704
    |depth newColorMap newImage oldImage usedColors oldToNew oldBits newBits tmpBits
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7705
     expectedSize w h| 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7706
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7707
    oldImage := self image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7708
    depth := oldImage depth.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7709
    w := oldImage width.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7710
    h := oldImage height.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7711
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7712
    usedColors := oldImage realColorMap.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7713
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7714
    "/ translation table
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7715
    oldToNew := ByteArray new:(1 bitShift:depth).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7716
    newColorMap := usedColors asArray.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7717
    newColorMap sort:sortBlock.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7718
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7719
    oldImage colorMap asArray keysAndValuesDo:[:oldIdx :clr |
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7720
        |newPixel|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7721
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7722
        (usedColors includes:clr) ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7723
            newPixel := newColorMap indexOf:clr.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7724
            oldToNew at:oldIdx put:newPixel-1.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7725
        ]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7726
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7727
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7728
    oldBits := oldImage bits.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7729
    "/ sanity check...
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7730
    expectedSize := ((w * h * depth + 7) // 8).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7731
    (oldBits size < expectedSize) ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7732
        self halt:'incorrect pixeldata size'.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7733
        oldBits := (ByteArray new:expectedSize) replaceFrom:1 with:oldBits; yourself.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7734
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7735
    newBits := ByteArray new:(oldBits size).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7736
    depth ~~ 8 ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7737
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7738
        "/ expand/compress can only handle 8bits
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7739
        tmpBits := ByteArray uninitializedNew:(w*h).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7740
        oldBits
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7741
            expandPixels:depth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7742
            width:w height:h 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7743
            into:tmpBits
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7744
            mapping:oldToNew.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7745
        tmpBits
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7746
            compressPixels:depth 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7747
            width:w height:h 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7748
            into:newBits 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7749
            mapping:nil
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7750
    ] ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7751
        oldBits
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7752
            expandPixels:depth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7753
            width:w height:h 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7754
            into:newBits
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7755
            mapping:oldToNew.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7756
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7757
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7758
    newImage := oldImage species new
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7759
                    width:w height:h depth:depth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7760
                    fromArray:newBits.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7761
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7762
    newImage colorMap:newColorMap.  
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7763
    newImage fileName:oldImage fileName.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7764
    newImage mask:(oldImage mask copy).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7765
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7766
    (imageEditView image:newImage) notNil ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7767
        self fetchImageData.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7768
    ]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7769
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7770
    "Modified: / 15-09-1998 / 17:53:32 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7771
    "Created: / 30-09-1998 / 23:51:23 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7772
    "Modified (comment): / 31-08-2017 / 14:19:21 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7773
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7774
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7775
updateImageAfterDoing:aBlockOrSelector
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7776
    self withExecuteCursorDo:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7777
        aBlockOrSelector value:imageEditView.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7778
        self updateImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7779
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7780
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7781
    "Created: / 31-08-2017 / 12:14:39 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7782
! !
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7783
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7784
!ImageEditor methodsFor:'user actions-colormap-basic'!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7785
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7786
nonUndoableClearColormapEntry0AndMaskedPixels
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7787
    "ensure that there is a colorMap entry with 0/0/0 at position
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7788
     0 and then clear all masked pixels (to pixelValue 0).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7789
     This is required for windows icons to be really transparent"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7790
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7791
    |index colorMap| 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7792
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7793
    self nonUndoableCompressColorMap.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7794
    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7795
    colorMap := self image colorMap.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7796
    (colorMap includes:(Color black)) ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7797
        self addColorToColormap:(Color black) undoable:false.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7798
        colorMap := self image colorMap.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7799
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7800
    index := colorMap indexOf:(Color black).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7801
    index == 1 ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7802
        self nonUndoableSortColorMapWith:self sortBlockForColorsByRGB.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7803
        colorMap := self image colorMap.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7804
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7805
    self nonUndoableClearMaskedPixels
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7806
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7807
    "Created: / 31-08-2017 / 14:31:09 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7808
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7809
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7810
nonUndoableClearMaskedPixels
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7811
    "clear all masked pixels (to pixelValue 0)"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7812
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7813
    |newImage| 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7814
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7815
    newImage := self image clearMaskedPixels.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7816
    0 to:newImage height - 1 do:[:y |
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7817
        0 to:newImage width - 1 do:[:x |
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7818
            (newImage maskAtX:x y:y) == 0 ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7819
                newImage pixelAtX:x y:y put:0
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7820
            ]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7821
        ]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7822
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7823
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7824
    (imageEditView image:newImage) notNil ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7825
        self fetchImageData.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7826
    ]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7827
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7828
    "Created: / 31-08-2017 / 14:22:58 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7829
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7830
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7831
nonUndoableCompressColorMap
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7832
    "not undoable
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7833
     calculates a new color map for the image, using only used colors"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7834
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7835
    |newImage| 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7836
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7837
    newImage := self image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7838
    newImage compressColorMap.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7839
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7840
    (imageEditView image:newImage) notNil ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7841
        self fetchImageData.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7842
    ]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7843
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7844
    "Created: / 31-08-2017 / 14:21:51 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7845
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7846
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7847
nonUndoableSortColorMapWith:sortBlock
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7848
    "not undoable
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7849
     calculates a new color map for the image, sorting colors"
1939
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  7850
3224
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7851
    |depth newColorMap newImage oldImage usedColors oldToNew oldBits newBits tmpBits
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7852
     expectedSize w h| 
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7853
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7854
    oldImage := self image.
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7855
    depth := oldImage depth.
3224
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7856
    w := oldImage width.
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7857
    h := oldImage height.
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7858
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7859
    usedColors := oldImage realColorMap.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7860
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7861
    "/ translation table
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7862
    oldToNew := ByteArray new:(1 bitShift:depth).
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7863
    newColorMap := usedColors asArray.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7864
    newColorMap sort:sortBlock.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7865
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7866
    oldImage colorMap asArray keysAndValuesDo:[:oldIdx :clr |
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7867
        |newPixel|
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7868
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7869
        (usedColors includes:clr) ifTrue:[
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7870
            newPixel := newColorMap indexOf:clr.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7871
            oldToNew at:oldIdx put:newPixel-1.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7872
        ]
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7873
    ].
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7874
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7875
    oldBits := oldImage bits.
3224
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7876
    "/ sanity check...
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7877
    expectedSize := ((w * h * depth + 7) // 8).
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7878
    (oldBits size < expectedSize) ifTrue:[
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7879
        self halt:'incorrect pixeldata size'.
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7880
        oldBits := (ByteArray new:expectedSize) replaceFrom:1 with:oldBits; yourself.
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7881
    ].
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7882
    newBits := ByteArray new:(oldBits size).
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7883
    depth ~~ 8 ifTrue:[
3224
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7884
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7885
        "/ expand/compress can only handle 8bits
3224
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7886
        tmpBits := ByteArray uninitializedNew:(w*h).
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7887
        oldBits
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7888
            expandPixels:depth
3224
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7889
            width:w height:h 
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7890
            into:tmpBits
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7891
            mapping:oldToNew.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7892
        tmpBits
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7893
            compressPixels:depth 
3224
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7894
            width:w height:h 
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7895
            into:newBits 
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7896
            mapping:nil
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7897
    ] ifFalse:[
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7898
        oldBits
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7899
            expandPixels:depth
3224
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7900
            width:w height:h 
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7901
            into:newBits
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7902
            mapping:oldToNew.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7903
    ].
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7904
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7905
    newImage := oldImage species new
3224
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7906
                    width:w height:h depth:depth
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7907
                    fromArray:newBits.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7908
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7909
    newImage colorMap:newColorMap.  
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7910
    newImage fileName:oldImage fileName.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7911
    newImage mask:(oldImage mask copy).
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7912
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7913
    (imageEditView image:newImage) notNil ifTrue:[
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7914
        self fetchImageData.
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7915
    ]
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7916
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7917
    "Created: / 31-08-2017 / 14:19:42 / cg"
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7918
! !
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7919
1715
9eebdb3802aa method category rename
Claus Gittinger <cg@exept.de>
parents: 1713
diff changeset
  7920
!ImageEditor methodsFor:'user actions-editing'!
400
228524287573 intitial checkin
tz
parents:
diff changeset
  7921
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7922
autoCropAll
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7923
    "find all borders and cut them off"
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7924
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7925
    imageEditView autoCropLeft:true right:true top:true bottom:true.   
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7926
    self updateInfoLabel
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7927
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7928
    "Created: / 20-02-2017 / 18:05:38 / cg"
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7929
!
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7930
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7931
autoCropBottom
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7932
    "find a bottom border and cut it off"
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7933
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7934
    imageEditView autoCropLeft:false right:false top:false bottom:true.   
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7935
    self updateInfoLabel
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7936
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7937
    "Created: / 20-02-2017 / 18:05:45 / cg"
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7938
!
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7939
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7940
autoCropLeft
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7941
    "find a left border and cut it off"
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7942
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7943
    imageEditView autoCropLeft:true right:false top:false bottom:false.   
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7944
    self updateInfoLabel
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7945
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7946
    "Created: / 20-02-2017 / 18:05:52 / cg"
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7947
!
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7948
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7949
autoCropRight
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7950
    "find a right border and cut it off"
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7951
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7952
    imageEditView autoCropLeft:false right:true top:false bottom:false.   
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7953
    self updateInfoLabel
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7954
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7955
    "Created: / 20-02-2017 / 18:04:20 / cg"
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7956
!
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7957
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7958
autoCropTop
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7959
    "find a top border and cut it off"
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7960
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7961
    imageEditView autoCropLeft:false right:false top:true bottom:false.   
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7962
    self updateInfoLabel
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7963
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7964
    "Created: / 20-02-2017 / 18:06:03 / cg"
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7965
!
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7966
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7967
ditherGrayToDepth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7968
    self askForDepthThenDo:[:depth |
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7969
        self ditherGrayToDepth:depth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7970
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7971
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7972
    "Created: / 24-08-2017 / 17:49:42 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7973
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7974
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7975
ditherGrayToDepth:depth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7976
    self withExecuteCursorDo:[
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  7977
        |image newImage|
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  7978
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  7979
        image := self image.
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7980
        depth == 1 ifTrue:[
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  7981
            newImage := image asErrorDitheredMonochromeImage
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7982
        ] ifFalse:[
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  7983
            newImage := image asGrayImageDepth:depth dither:#floydSteinberg.
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7984
        ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7985
        imageEditView newImageWithUndo:newImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7986
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7987
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7988
    "Created: / 24-08-2017 / 17:51:07 / cg"
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  7989
    "Modified: / 23-10-2017 / 10:58:18 / cg"
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7990
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7991
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7992
ditherToDepth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7993
    self askForDepthThenDo:[:depth |
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7994
        self convertToDepth:depth dither:true
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7995
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7996
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7997
    "Created: / 07-07-2006 / 13:22:10 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7998
    "Modified: / 30-08-2017 / 00:34:42 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7999
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8000
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8001
ditherToNumberOfGrayColors
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8002
    |oldDepth numGrayColors suggestion grayImage userInput grayColors|
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8003
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8004
    oldDepth := self image depth.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8005
    grayImage := self image asGrayImageDepth:8.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8006
    
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8007
    suggestion := LastNumThresholdGrayColors notNil ifTrue:[
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8008
                    LastNumThresholdGrayColors
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8009
                  ] ifFalse:[
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8010
                    oldDepth > 8 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8011
                        ifTrue:[256] 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8012
                        ifFalse:[2 raisedTo:((oldDepth // 2 - 1) nextPowerOf2)]
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8013
                  ].
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8014
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8015
    Dialog modifyingBoxWith:[:box |
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8016
        |preview slider update thresholdValue|
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8017
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8018
        thresholdValue := suggestion asValue.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8019
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8020
        box enterField 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8021
            converter:(PrintConverter new initForNumber);
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8022
            model:thresholdValue.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8023
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8024
        box verticalPanel extent:1.0 @ 300.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8025
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8026
        box verticalPanel add:(slider := HorizontalSlider new start:2 stop:256 step:1).
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8027
        slider model:thresholdValue.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8028
        slider width:1.0; leftInset:4; rightInset:4.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8029
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8030
        box verticalPanel add:(preview := ImageView new).
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8031
        preview extent:300 @300.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8032
        preview level:-1.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8033
        box verticalPanel horizontalLayout:#fitSpace.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8034
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8035
        update := 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8036
            [
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8037
                |numGrayColors depth s t tImage|
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8038
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8039
                numGrayColors := thresholdValue value clampBetween:2 and:256.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8040
                grayColors := Color grayColorVector:numGrayColors.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8041
                tImage := grayImage asDitheredImageUsing:grayColors depth:(grayImage depth).
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8042
                
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8043
                preview image:(tImage magnifiedPreservingRatioTo:preview extent).
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8044
            ].
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8045
        update value.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8046
        box enterField acceptOnLostFocus:true.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8047
        box enterField acceptOnLeave:true.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8048
        thresholdValue onChangeEvaluate:update.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8049
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8050
    ] do:[
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8051
        userInput := Dialog request:'Number of Gray Colors ?' initialAnswer:suggestion asString.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8052
    ].
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8053
    userInput isEmptyOrNil ifTrue:[^ self].
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8054
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8055
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8056
    numGrayColors := Number readFrom:userInput onError:nil.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8057
    numGrayColors isNil ifTrue:[^ self].
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8058
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8059
    grayColors := Color grayColorVector:numGrayColors.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8060
    imageEditView newImageWithUndo:(grayImage asDitheredImageUsing:grayColors depth:(grayImage depth)).
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8061
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8062
    "Created: / 23-10-2017 / 11:17:44 / cg"
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8063
!
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8064
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8065
do3DProjection
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8066
    "make a naive 3D projection;
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8067
     can be used to create those typical marketing images as seen in web pages"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8068
     
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8069
    |box dx1 dx2 image|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8070
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8071
    image := imageEditView image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8072
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8073
    box := EnterBox new.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8074
    box title:(resources string:'dX1 (0 < dx < 0.5):').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8075
    box okText:(resources string:'OK').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8076
    box abortText:(resources string:'Cancel').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8077
    box initialText:'0.1'.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8078
    box showAtPointer.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8079
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8080
    (box accepted 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8081
    and: [(dx1 := Number readFrom:(box contents) onError:nil) notNil])
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8082
    ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8083
        box title:(resources string:'dX2 (0 < dx < 0.5):').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8084
        box initialText:(dx1 printString).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8085
        box showAtPointer.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8086
        (box accepted 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8087
        and: [(dx2 := Number readFrom:(box contents) onError:nil) notNil])
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8088
        ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8089
            imageEditView threeDProjection:dx1 and:dx2.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8090
        ]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8091
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8092
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8093
    self updateInfoLabel
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8094
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8095
    "Modified (comment): / 31-08-2017 / 13:58:03 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8096
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8097
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8098
doBrightenImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8099
    imageEditView brightenImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8100
    self listOfColors removeAll.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8101
    self findColorMapMode.     
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8102
    "/ imageEditView removelastUndo
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8103
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8104
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8105
doBrowseClass
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8106
    "opens a System Browser on the resourceClass and the resourceSelector"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8107
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8108
    |cls|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8109
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8110
    cls := imageEditView resourceClass.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8111
    cls isNil ifTrue:[^ self warn:'No Class specified'].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8112
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8113
    cls browserClass
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8114
        openInClass:cls class 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8115
        selector:(imageEditView resourceSelector)
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8116
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8117
    "Modified: / 31.7.1998 / 02:01:15 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8118
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8119
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8120
doCopyImageToClipboard
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8121
    imageEditView copyImageToClipboard.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8122
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8123
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8124
doCropManual
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8125
    "let user specify borders and cut them off"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8126
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8127
    |bindings left top right bottom img firstChange cropAction acceptChannel|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8128
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8129
    acceptChannel := TriggerValue new.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8130
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8131
    firstChange := true.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8132
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8133
    cropAction := 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8134
        [:lV :rV :tV :bV | |l r t b|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8135
            acceptChannel value:true.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8136
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8137
            l := lV value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8138
            r := rV value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8139
            t := tV value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8140
            b := bV value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8141
            (l + r + t + b) == 0 ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8142
                UserPreferences current beepInEditor ifTrue:[                
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8143
                    self window beep
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8144
                ]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8145
            ] ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8146
                img := imageEditView image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8147
                firstChange ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8148
                    imageEditView makeUndo.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8149
                    firstChange := false.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8150
                ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8151
                imageEditView
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8152
                    makeSubImageX:l y:t 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8153
                    width:(img width - l - r)
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8154
                    height:(img height - t - b).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8155
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8156
                self updateImagePreView.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8157
                self updateInfoLabel
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8158
            ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8159
        ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8160
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8161
    bindings := IdentityDictionary new.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8162
    bindings at:#cropLeftAmount put:(left := 1 asValue).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8163
    bindings at:#cropRightAmount put:(right := 1 asValue).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8164
    bindings at:#cropTopAmount put:(top := 1 asValue).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8165
    bindings at:#cropBottomAmount put:(bottom := 1 asValue).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8166
    bindings at:#acceptChannel put:acceptChannel.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8167
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8168
    bindings at:#cropLeftNow   put:[ cropAction value:left value:0 value:0 value:0 ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8169
    bindings at:#cropRightNow  put:[ cropAction value:0 value:right value:0 value:0 ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8170
    bindings at:#cropTopNow    put:[ cropAction value:0 value:0 value:top value:0 ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8171
    bindings at:#cropBottomNow put:[ cropAction value:0 value:0 value:0 value:bottom ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8172
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8173
    bindings at:#applyCropAction   put:[ cropAction value:left value:right value:top value:bottom ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8174
    bindings at:#cropBoxIsDialog   put:true.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8175
    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8176
    (self openDialogInterface:#cropSpec withBindings:bindings) 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8177
    ifFalse:[ 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8178
        firstChange ~~ true ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8179
            imageEditView undo.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8180
            self updateImagePreView.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8181
        ]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8182
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8183
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8184
    "Created: / 07-09-1998 / 18:16:07 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8185
    "Modified: / 19-02-2017 / 15:43:50 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8186
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8187
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8188
doDarkenImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8189
    imageEditView darkenImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8190
    self listOfColors removeAll.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8191
    self findColorMapMode.     
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8192
    "/ imageEditView removelastUndo
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8193
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8194
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8195
doEditMask
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8196
    |mask|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8197
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8198
    (mask := self image mask) notNil ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8199
        mask edit
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8200
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8201
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8202
    "Modified: / 18-02-2017 / 00:38:51 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8203
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8204
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8205
doFlipHorizontal
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8206
    "flips horizontally current image"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8207
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8208
    imageEditView flipHorizontal
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8209
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8210
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8211
doFlipVertical
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8212
    "flips vertically current image"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8213
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8214
    imageEditView flipVertical
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8215
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8216
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8217
doInsertTextFromUser
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8218
    |text tempForm tempImage maskImage font w h paintColor|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8219
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8220
    text := Dialog request:'Text to be inserted (placed as bitmap into clipboard for paste):'.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8221
    text isEmptyOrNil ifTrue:[^ self ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8222
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8223
    font := Font family:'arial' size:20.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8224
    font := font onDevice:Screen current.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8225
    w := font widthOf:text.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8226
    h := font heightOf:text.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8227
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8228
    tempForm := Form extent:(w@h) depth:1 onDevice:(Screen current).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8229
    tempForm clear.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8230
    tempForm font:font.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8231
    tempForm paint:(Color colorId:1).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8232
    tempForm displayString:text at:(0@font ascent).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8233
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8234
    tempImage := tempForm asImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8235
    maskImage := tempForm asImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8236
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8237
    paintColor := imageEditView selectedColor.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8238
    paintColor  colorId == 0 ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8239
        paintColor := Color black
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8240
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8241
    tempImage   
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8242
        photometric:#palette;
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8243
        colorMap:(Array 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8244
                    with:Color white 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8245
                    with:paintColor);
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8246
        mask:maskImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8247
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8248
    ImageEditView copyImageToClipboard:tempImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8249
    self editMode value:#paste.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8250
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8251
    "Modified: / 11-11-2007 / 12:32:55 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8252
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8253
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8254
doInspectImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8255
    "opens a System Browser on the resourceClass and the resourceSelector"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8256
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8257
    self image inspect
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8258
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8259
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8260
doInvertedBitsImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8261
    "inverts the pixels"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8262
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8263
    self withExecuteCursorDo:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8264
        imageEditView makeInvertedBits.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8265
        self updateImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8266
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8267
"/
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8268
"/    imageEditView negativeImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8269
"/    self listOfColors removeAll.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8270
"/    self findColorMapMode.     
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8271
"/    "/ imageEditView removelastUndo
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8272
"/
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8273
"/
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8274
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8275
    "Created: / 31-08-2017 / 12:49:13 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8276
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8277
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8278
doMagnifyDown
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8279
    "magnifies the current image one step down"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8280
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8281
    |magHolder mag|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8282
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8283
    magHolder := self magnificationHolder.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8284
    (mag := magHolder value) > 1 ifTrue: [
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8285
        magHolder value: mag - 1
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8286
    ]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8287
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8288
    "Modified: / 26.7.1998 / 20:24:08 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8289
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8290
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8291
doMagnifyImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8292
    "magnifies the current image to a new size"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8293
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8294
    |box newSize image antiAliased|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8295
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8296
    antiAliased := false asValue.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8297
    image := imageEditView image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8298
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8299
    box := EnterBox new.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8300
    box title:(resources string:'Images new size:').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8301
    box okText:(resources string:'OK').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8302
    box abortText:(resources string:'Cancel').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8303
    box initialText:image extent printString.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8304
    box verticalPanel add:(CheckBox label:(resources string:'Antialias/Smooth') model:antiAliased).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8305
    box showAtPointer.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8306
    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8307
    (box accepted 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8308
    and: [(newSize := self pointFromString:(box contents)) notNil])
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8309
    ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8310
        newSize isPoint ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8311
            self warn:'Please enter the new size as ''x @ y''.'.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8312
            ^ self.    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8313
        ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8314
        antiAliased value ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8315
            ((newSize x < image width) or:[(newSize y < image height)]) ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8316
                imageEditView magnifySmoothingTo:newSize.    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8317
            ] ifFalse:[    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8318
                imageEditView magnifyAntiAliasedImageTo:newSize.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8319
            ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8320
        ] ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8321
            imageEditView magnifyImageTo:newSize.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8322
        ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8323
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8324
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8325
    self updateInfoLabel
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8326
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8327
    "Modified: / 30-08-2017 / 15:46:02 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8328
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8329
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8330
doMagnifyImageBy
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8331
    "magnifies the current image (by a scale)"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8332
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8333
    |oldSize newSize scaleString scale image antiAliased smoothing|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8334
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8335
    image := imageEditView image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8336
    oldSize := image extent.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8337
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8338
    antiAliased := false asValue.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8339
    smoothing := false asValue.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8340
    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8341
    Dialog modifyingBoxWith:[:box |
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8342
        box verticalPanel add:(CheckBox label:(resources string:'Antialias/Smooth') model:antiAliased).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8343
        "/ box verticalPanel add:(CheckBox label:(resources string:'Smoothing') model:smoothing).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8344
    ] do:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8345
        scaleString := Dialog 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8346
                   request:(resources string:'Scale factor (<1 to shrink; >1 to magnify):') 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8347
                   initialAnswer:'1'
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8348
                   list:#('0.1' '0.25' '0.3' '0.5' '1.5' '2' '3' '4').     
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8349
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8350
    scaleString isNil ifTrue:[^ self].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8351
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8352
    scale := Object readFromString:scaleString onError:nil.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8353
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8354
    scale notNil ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8355
        scale isNumber ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8356
            self warn:'please enter a scale factor (<1 to shrink; >1 to magnify).'.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8357
            ^ self.    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8358
        ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8359
        newSize := oldSize * scale.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8360
        antiAliased value ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8361
            scale < 1 ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8362
                imageEditView magnifySmoothingBy:scale.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8363
            ] ifFalse:[    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8364
                imageEditView magnifyAntiAliasedImageTo:newSize.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8365
            ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8366
        ] ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8367
            imageEditView magnifyImageTo:newSize.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8368
        ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8369
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8370
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8371
    self updateInfoLabel
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8372
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8373
    "Modified: / 30-08-2017 / 15:34:56 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8374
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8375
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8376
doMagnifyUp
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8377
    "magnifies the current image one step up"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8378
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8379
    |magHolder mag|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8380
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8381
    magHolder := self magnificationHolder.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8382
    (mag := magHolder value) < 63 ifTrue: [
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8383
        magHolder value: mag + 1
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8384
    ]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8385
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8386
    "Modified: / 26.7.1998 / 20:23:52 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8387
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8388
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8389
doResizeImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8390
    "resizes the current image"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8391
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8392
    |box newSize image|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8393
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8394
    image := imageEditView image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8395
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8396
    box := EnterBox new.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8397
    box title:(resources string:'Images new size:').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8398
    box okText:(resources string:'OK').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8399
    box abortText:(resources string:'Cancel').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8400
    box initialText:image extent printString.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8401
    box showAtPointer.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8402
    (box accepted 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8403
    and: [(newSize := self pointFromString:(box contents)) notNil])
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8404
    ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8405
        imageEditView resizeImageTo:newSize.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8406
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8407
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8408
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8409
doRotateImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8410
    "rotates current image"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8411
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8412
    |rotationString box rotation|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8413
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8414
    rotationString := Dialog 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8415
                        request:(resources string:'Rotate by (degrees, clockwise):')
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8416
                        list:#( '-90' '90' '180' '45' '-45'  '135' '-135' ) 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8417
                        initialAnswer:90.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8418
    rotationString isEmptyOrNil ifTrue:[^ self].    "/ canceled
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8419
    rotation := Number readFrom:rotationString onError:[nil].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8420
    rotation isNil ifTrue:[^ self].   
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8421
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8422
"/    box := EnterBox new.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8423
"/    box title:(resources string:'Rotate by (degrees, clockwise):').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8424
"/    box okText:(resources string:'OK').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8425
"/    box abortText:(resources string:'Cancel').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8426
"/    box initialText: '0'.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8427
"/    box showAtPointer.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8428
"/    (box accepted and: [(rotation := Number readFromString: box contents onError:nil) notNil])
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8429
"/    ifFalse:[ ^ self ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8430
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8431
    imageEditView rotateImageBy:rotation.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8432
    self updateInfoLabel.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8433
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8434
    "Modified: / 18-03-2012 / 14:41:14 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8435
    "Modified (comment): / 24-08-2017 / 15:02:57 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8436
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8437
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8438
doShiftManual
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8439
    "let user specify amount and shift"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8440
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8441
    |bindings amount img firstChange shiftAction acceptChannel wrapHolder|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8442
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8443
    acceptChannel := TriggerValue new.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8444
    wrapHolder := (lastShiftUsedWrap ? true) asValue.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8445
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8446
    firstChange := true.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8447
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8448
    shiftAction := 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8449
        [:shiftH :shiftV | 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8450
            acceptChannel value:true.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8451
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8452
            img := imageEditView image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8453
            firstChange ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8454
                imageEditView makeUndo.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8455
                firstChange := false.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8456
            ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8457
            imageEditView shiftImageHorizontal:(shiftH value) vertical:(shiftV value) wrap:(wrapHolder value).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8458
            self updateInfoLabel
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8459
        ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8460
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8461
    bindings := IdentityDictionary new.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8462
    bindings at:#shiftAmount put:(amount := 1 asValue).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8463
    bindings at:#wrap put:wrapHolder.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8464
    bindings at:#acceptChannel put:acceptChannel.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8465
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8466
    bindings at:#shiftLeftNow   put:[ shiftAction value:(-1*amount value) value:0 ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8467
    bindings at:#shiftRightNow  put:[ shiftAction value:amount value value:0 ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8468
    bindings at:#shiftUpNow     put:[ shiftAction value:0 value:(-1*amount value) ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8469
    bindings at:#shiftDownNow   put:[ shiftAction value:0 value:amount value ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8470
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8471
    (self openDialogInterface:#shiftDialogSpec withBindings:bindings) 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8472
    ifFalse:[ 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8473
        firstChange ~~ true ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8474
          imageEditView undo
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8475
        ]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8476
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8477
    lastShiftUsedWrap := wrapHolder value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8478
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8479
    "Created: / 7.9.1998 / 18:16:07 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8480
    "Modified: / 7.9.1998 / 18:20:42 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8481
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8482
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8483
doUnCropManual
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8484
    "let user specify borders and add them"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8485
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8486
    |bindings leftAmount topAmount rightAmount bottomAmount img|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8487
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8488
    bindings := IdentityDictionary new.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8489
    bindings at:#cropLeftAmount put:(leftAmount := 1 asValue).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8490
    bindings at:#cropRightAmount put:(rightAmount := 1 asValue).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8491
    bindings at:#cropTopAmount put:(topAmount := 1 asValue).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8492
    bindings at:#cropBottomAmount  put:(bottomAmount := 1 asValue).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8493
    bindings at:#cropBoxIsDialog   put:true.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8494
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8495
    (self openDialogInterface:#uncropSpec withBindings:bindings)
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8496
    ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8497
        leftAmount := leftAmount value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8498
        rightAmount := rightAmount value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8499
        topAmount := topAmount value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8500
        bottomAmount := bottomAmount value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8501
        img := imageEditView image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8502
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8503
        imageEditView
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8504
            makeBorderedImageX:leftAmount y:topAmount 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8505
            width:(img width + leftAmount + rightAmount)
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8506
            height:(img height + topAmount + bottomAmount).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8507
        self updateInfoLabel
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8508
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8509
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8510
    "Created: / 07-09-1998 / 18:16:07 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8511
    "Modified: / 19-02-2017 / 15:31:00 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8512
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8513
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8514
doUndo
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8515
    "reverses last edit action"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8516
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8517
    imageEditView undo.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8518
    self updateImagePreView
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8519
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8520
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8521
makeInverse
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8522
    "inverts the pixels - for palettes, this leads to funny results"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8523
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8524
    self updateImageAfterDoing:#makeInverse.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8525
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8526
    "Modified: / 31-08-2017 / 12:16:07 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8527
    "Modified (comment): / 31-08-2017 / 13:51:28 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8528
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8529
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8530
makeMonochromeImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8531
    "let user choose a threshold, then convert to monochrome"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8532
    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8533
    |image userInput thresholdBrighness|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8534
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8535
    image := imageEditView image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8536
    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8537
    Dialog modifyingBoxWith:[:box |
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8538
        |preview slider update thresholdValue|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8539
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8540
        thresholdValue := 0.5 asValue.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8541
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8542
        box enterField 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8543
            converter:(PrintConverter new initForNumber);
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8544
            model:thresholdValue.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8545
            
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8546
        box verticalPanel extent:1.0 @ 300.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8547
        
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8548
        box verticalPanel add:(slider := HorizontalSlider new start:0 stop:1 step:0.05).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8549
        slider model:thresholdValue.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8550
        slider width:1.0; leftInset:4; rightInset:4.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8551
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8552
        box verticalPanel add:(preview := ImageView new).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8553
        preview extent:300 @300.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8554
        preview level:-1.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8555
        box verticalPanel horizontalLayout:#fitSpace.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8556
        
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8557
        update := 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8558
            [
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8559
                |s t|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8560
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8561
                t := thresholdValue value clampBetween:0 and:1.   
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8562
                preview image:((image asThresholdMonochromeImage:t)
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8563
                            magnifiedPreservingRatioTo:preview extent).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8564
            ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8565
        update value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8566
        box enterField acceptOnLostFocus:true.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8567
        box enterField acceptOnLeave:true.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8568
        thresholdValue onChangeEvaluate:update.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8569
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8570
    ] do:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8571
        userInput := Dialog request:'Threshold (0=black; 1=white) ?' initialAnswer:0.5.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8572
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8573
    userInput isEmptyOrNil ifTrue:[^ self].
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8574
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8575
    thresholdBrighness := Number readFrom:userInput onError:nil.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8576
    thresholdBrighness isNil ifTrue:[^ self].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8577
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8578
    thresholdBrighness := thresholdBrighness clampBetween:0 and:1.
3478
1b4386fd1953 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3477
diff changeset
  8579
    
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8580
    imageEditView newImageWithUndo:(image asThresholdMonochromeImage:thresholdBrighness)
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8581
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8582
    "Created: / 24-08-2017 / 15:26:44 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8583
    "Modified: / 24-08-2017 / 17:54:21 / cg"
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8584
    "Modified (format): / 23-10-2017 / 10:42:52 / cg"
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8585
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8586
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8587
makeNegative
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8588
    "negates current image by negating the color map"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8589
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8590
    self withExecuteCursorDo:[
3477
52202af265c2 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3476
diff changeset
  8591
        imageEditView makeNegative.
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8592
        self updateImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8593
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8594
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8595
    "Created: / 31-08-2017 / 13:49:47 / cg"
3477
52202af265c2 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3476
diff changeset
  8596
    "Modified (comment): / 01-09-2017 / 10:27:37 / cg"
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8597
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8598
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8599
thresholdGrayToDepth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8600
    self askForDepthThenDo:[:depth |
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8601
        self thresholdGrayToDepth:depth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8602
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8603
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8604
    "Created: / 24-08-2017 / 17:49:23 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8605
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8606
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8607
thresholdGrayToDepth:depth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8608
    self withExecuteCursorDo:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8609
        |newImage|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8610
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8611
        newImage := self image asThresholdGrayImageDepth:depth.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8612
        imageEditView newImageWithUndo:newImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8613
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8614
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8615
    "Created: / 24-08-2017 / 17:49:30 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8616
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8617
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8618
thresholdToDepth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8619
    self askForDepthThenDo:[:depth |
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8620
        self convertToDepth:depth dither:false
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8621
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8622
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8623
    "Created: / 30-08-2017 / 00:31:33 / cg"
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8624
!
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8625
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8626
thresholdToNumberOfGrayColors
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8627
    |oldDepth numGrayColors suggestion grayImage userInput grayColors|
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8628
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8629
    oldDepth := self image depth.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8630
    grayImage := self image asGrayImageDepth:8.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8631
    
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8632
    suggestion := LastNumThresholdGrayColors notNil ifTrue:[
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8633
                    LastNumThresholdGrayColors
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8634
                  ] ifFalse:[
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8635
                    oldDepth > 8 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8636
                        ifTrue:[256] 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8637
                        ifFalse:[2 raisedTo:((oldDepth // 2 - 1) nextPowerOf2)]
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8638
                  ].
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8639
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8640
    Dialog modifyingBoxWith:[:box |
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8641
        |preview slider update thresholdValue|
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8642
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8643
        thresholdValue := suggestion asValue.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8644
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8645
        box enterField 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8646
            converter:(PrintConverter new initForNumber);
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8647
            model:thresholdValue.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8648
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8649
        box verticalPanel extent:1.0 @ 300.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8650
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8651
        box verticalPanel add:(slider := HorizontalSlider new start:2 stop:256 step:1).
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8652
        slider model:thresholdValue.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8653
        slider width:1.0; leftInset:4; rightInset:4.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8654
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8655
        box verticalPanel add:(preview := ImageView new).
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8656
        preview extent:300 @300.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8657
        preview level:-1.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8658
        box verticalPanel horizontalLayout:#fitSpace.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8659
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8660
        update := 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8661
            [
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8662
                |numGrayColors depth s t tImage|
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8663
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8664
                numGrayColors := thresholdValue value clampBetween:2 and:256.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8665
                grayColors := Color grayColorVector:numGrayColors.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8666
                tImage := grayImage asNearestPaintImageDepth:(grayImage depth) colors:grayColors.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8667
                
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8668
                preview image:(tImage magnifiedPreservingRatioTo:preview extent).
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8669
            ].
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8670
        update value.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8671
        box enterField acceptOnLostFocus:true.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8672
        box enterField acceptOnLeave:true.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8673
        thresholdValue onChangeEvaluate:update.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8674
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8675
    ] do:[
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8676
        userInput := Dialog request:'Number of Gray Colors ?' initialAnswer:suggestion asString.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8677
    ].
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8678
    userInput isEmptyOrNil ifTrue:[^ self].
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8679
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8680
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8681
    numGrayColors := Number readFrom:userInput onError:nil.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8682
    numGrayColors isNil ifTrue:[^ self].
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8683
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8684
    grayColors := Color grayColorVector:numGrayColors.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8685
    imageEditView newImageWithUndo:(grayImage asNearestPaintImageDepth:(grayImage depth) colors:grayColors).
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8686
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8687
    "Created: / 23-10-2017 / 10:55:15 / cg"
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8688
! !
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8689
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8690
!ImageEditor methodsFor:'user actions-editing-colors'!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8691
3471
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8692
convertToDepth:depth dither:doDither
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8693
    |answer labels values 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8694
     ditherColors fixColors
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8695
     nGrey greyColorsAlready moreColors d|
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8696
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8697
    "/ no colormap above 12 bits!!
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8698
    depth > 12 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8699
        answer := #TrueColor.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8700
    ] ifFalse:[    
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8701
        doDither ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8702
            (depth >= 8) ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8703
                labels := #('Cancel' 'Use Browser Palette' 'Use Standard' 'Compute' 'TrueColor').
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8704
                values := #(nil UseBrowserPalette UseStandard Compute TrueColor).
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8705
            ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8706
                depth == 1 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8707
                    answer := #UseStandard
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8708
                ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8709
                    labels := #('Cancel' 'Use Standard' 'Compute' 'TrueColor').
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8710
                    values := #(nil UseStandard Compute TrueColor). 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8711
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8712
            ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8713
        ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8714
            (depth >= 8) ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8715
                labels := #('Cancel' 'Use Browser Palette' 'Use Standard' 'TrueColor').
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8716
                values := #(nil UseBrowserPalette UseStandard TrueColor).
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8717
            ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8718
                answer := #UseStandard
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8719
            ].    
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8720
        ].    
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8721
    ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8722
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8723
    answer isNil ifTrue:[    
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8724
        answer := OptionBox
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8725
                  request:'Compute a new (optimized) colormap\(Warning: this may take some time)\\or else use a standard colormap?' withCRs
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8726
                  label:(resources string:'Dither how')
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8727
                  image:(YesNoBox iconBitmap)
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8728
                  buttonLabels:(resources array:labels)
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8729
                  values:values
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8730
                  default:#UseStandard
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8731
                  onCancel:nil.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8732
        answer isNil ifTrue:[^ self].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8733
    ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8734
    
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8735
    (answer == #Compute) ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8736
        ditherColors :=
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8737
            Color
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8738
                best:(1 bitShift:depth) 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8739
                ditherColorsForImage:self image
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8740
    ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8741
        (answer == #UseBrowserPalette) ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8742
            ditherColors := Color colorCubeWithRed:6 green:6 blue:6. 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8743
        ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8744
            answer == #TrueColor ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8745
                depth == 6 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8746
                    fixColors := FixedPalette 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8747
                                    redShift:4 redMask:3
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8748
                                    greenShift:2 greenMask:3
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8749
                                    blueShift:0 blueMask:3
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8750
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8751
                depth == 9 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8752
                    fixColors := FixedPalette 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8753
                                    redShift:6 redMask:7
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8754
                                    greenShift:3 greenMask:7
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8755
                                    blueShift:0 blueMask:7
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8756
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8757
                depth == 12 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8758
                    fixColors := FixedPalette 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8759
                                    redShift:8 redMask:16r0F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8760
                                    greenShift:4 greenMask:16r0F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8761
                                    blueShift:0 blueMask:16r0F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8762
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8763
                depth == 15 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8764
                    fixColors := FixedPalette 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8765
                                    redShift:10 redMask:16r1F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8766
                                    greenShift:5 greenMask:16r1F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8767
                                    blueShift:0 blueMask:16r1F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8768
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8769
                depth == 16 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8770
                    fixColors := FixedPalette 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8771
                                    redShift:11 redMask:16r1F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8772
                                    greenShift:5 greenMask:16r3F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8773
                                    blueShift:0 blueMask:16r1F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8774
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8775
                depth == 18 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8776
                    fixColors := FixedPalette 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8777
                                    redShift:12 redMask:16r3F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8778
                                    greenShift:6 greenMask:16r3F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8779
                                    blueShift:0 blueMask:16r3F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8780
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8781
            ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8782
                depth == 1 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8783
                    ditherColors := { Color black . Color white }.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8784
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8785
                depth == 2 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8786
                    ditherColors := { Color black . Color darkGray  .Color lightGray . Color white }.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8787
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8788
                depth = 3 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8789
                    ditherColors := Color colorCubeWithRed:2 green:2 blue:2. 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8790
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8791
                depth = 4 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8792
                    ditherColors := Color vgaColors. 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8793
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8794
                depth = 5 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8795
                    ditherColors := Color colorCubeWithRed:3 green:4 blue:2.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8796
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8797
                depth = 6 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8798
                    ditherColors := Color colorCubeWithRed:4 green:4 blue:3.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8799
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8800
                depth = 7 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8801
                    ditherColors := Color colorCubeWithRed:5 green:5 blue:4. 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8802
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8803
                depth == 8 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8804
                    ditherColors := Color standardDitherColorsForDepth8. 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8805
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8806
                depth == 9 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8807
                    ditherColors := Color colorCubeWithRed:8 green:8 blue:8. 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8808
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8809
                ditherColors isNil ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8810
                    self error:'unsupported depth'.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8811
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8812
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8813
                "/ add as many gray colors as possible.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8814
                nGrey := (2 raisedTo:depth) - ditherColors size.  
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8815
                nGrey > 0 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8816
                    nGrey := nGrey min:100.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8817
                    greyColorsAlready := ditherColors select:[:clr | clr isGreyColor].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8818
                    d := 1 / nGrey.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8819
                    moreColors := (1 to:nGrey-1) 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8820
                                    collect:[:i | Color brightness:(d * i)] 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8821
                                    thenReject:[:clr | greyColorsAlready includes:clr ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8822
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8823
                    ditherColors := ditherColors , moreColors.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8824
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8825
            ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8826
        ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8827
    ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8828
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8829
    self withExecuteCursorDo:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8830
        |newImage|
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8831
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8832
        doDither ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8833
            depth == 1 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8834
                newImage := self image asErrorDitheredMonochromeImage
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8835
            ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8836
                answer == #TrueColor ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8837
                    newImage := self image asDitheredImageUsing:fixColors depth:depth.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8838
                ] ifFalse:[    
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8839
                    newImage := self image asDitheredImageUsing:ditherColors depth:depth.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8840
                ]
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8841
            ]
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8842
        ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8843
            answer == #TrueColor ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8844
                self halt.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8845
            ] ifFalse:[    
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8846
                newImage := self image asNearestPaintImageDepth:depth colors:ditherColors
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8847
            ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8848
        ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8849
        imageEditView newImageWithUndo:newImage.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8850
    ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8851
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8852
    "Created: / 30-08-2017 / 00:33:55 / cg"
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8853
    "Modified: / 30-08-2017 / 02:13:03 / cg"
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8854
!
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8855
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8856
makeInvertedBits
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8857
    "inverts the pixels - for palettes, this leads to funny results.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8858
     For others, this is the same as negating"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8859
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8860
    self updateImageAfterDoing:#makeInvertedBits.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8861
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8862
    "Created: / 31-08-2017 / 13:51:10 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  8863
! !
228524287573 intitial checkin
tz
parents:
diff changeset
  8864
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8865
!ImageEditor methodsFor:'user actions-image sequences'!
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8866
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8867
editEachImageFromSequence
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8868
    |seq|
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8869
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8870
    self checkModified ifFalse:[ ^ self ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8871
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8872
    imageEditView releaseUndos.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8873
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8874
    seq := self image imageSequence.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8875
    seq size > 10 ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8876
        (Dialog confirm:(resources string:'Ok to open %1 image editor windows?' with:seq size)) 
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8877
            ifFalse:[^ self].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8878
    ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8879
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8880
    seq do:[:eachFrame |
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8881
        ImageEditor openOnImage:eachFrame image
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8882
    ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8883
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8884
    "Modified: / 21-10-2010 / 15:01:25 / cg"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8885
!
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8886
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8887
gotoImageInSequence:index
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8888
    "display the next image in the image sequence"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8889
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8890
    |img seq frame listOfColors|
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8891
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8892
    imageEditView releaseUndos.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8893
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8894
    seq := self image imageSequence.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8895
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8896
    imageSeqNr := index.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8897
    frame := seq at:imageSeqNr.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8898
    imageEditView image:(frame image).
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8899
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8900
    (img := self image) notNil ifTrue:[          
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8901
        listOfColors := self listOfColors.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8902
        img colorMap notNil ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8903
            listOfColors contents:(img usedColors asSet asOrderedCollection).
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8904
        ] ifFalse:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8905
            listOfColors removeAll.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8906
        ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8907
        self findColorMapMode.     
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8908
        self updateLabelsAndHistory.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8909
        img := img onDevice:device.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8910
        imageEditView image:img.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8911
    ] ifFalse:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8912
        self updateForNoImage
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8913
    ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8914
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8915
    "Created: / 21-10-2010 / 14:22:11 / cg"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8916
!
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8917
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8918
nextImageInSequence
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8919
    "display the next image in the image sequence"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8920
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8921
    |seq index|
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8922
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8923
    seq := self image imageSequence.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8924
    (index := imageSeqNr) isNil ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8925
        index := 1.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8926
    ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8927
    index := index + 1.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8928
    index > seq size ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8929
        self information:'Back to first image in sequence'.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8930
        index := 1.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8931
    ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8932
    self gotoImageInSequence:index.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8933
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8934
    "Modified: / 21-10-2010 / 14:24:11 / cg"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8935
!
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8936
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8937
previousImageInSequence
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8938
    "display the previous image in the image sequence"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8939
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8940
    |seq index|
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8941
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8942
    seq := self image imageSequence.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8943
    (index := imageSeqNr) isNil ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8944
        index := 1.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8945
    ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8946
    index := index - 1.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8947
    index < 1 ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8948
        self information:'Wrap to last image in sequence'.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8949
        index := seq size.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8950
    ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8951
    self gotoImageInSequence:index.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8952
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8953
    "Created: / 21-10-2010 / 14:25:03 / cg"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8954
! !
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8955
1715
9eebdb3802aa method category rename
Claus Gittinger <cg@exept.de>
parents: 1713
diff changeset
  8956
!ImageEditor methodsFor:'user actions-loading'!
400
228524287573 intitial checkin
tz
parents:
diff changeset
  8957
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  8958
doLoadFromClass
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  8959
    "opens a dialog for loading an image from class and a (resource-) selector"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  8960
1122
66e895f34b9b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1121
diff changeset
  8961
    |img|
66e895f34b9b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1121
diff changeset
  8962
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  8963
    self checkModified ifFalse:[ ^ self ].
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  8964
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  8965
    (imageEditView loadFromClass) notNil ifTrue:[
1380
9787c42843c2 allow display and extract from image sequences (gif anims)
Claus Gittinger <cg@exept.de>
parents: 1377
diff changeset
  8966
        imageSeqNr := nil.
1122
66e895f34b9b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1121
diff changeset
  8967
        (img := self image) notNil ifTrue: [
1900
41ba86fb1087 cleanup
Claus Gittinger <cg@exept.de>
parents: 1899
diff changeset
  8968
            self updateColorsFromImage:img.
574
8d82e8f101c1 undo disabling
tz
parents: 573
diff changeset
  8969
            self findColorMapMode.
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  8970
            self updateLabelsAndHistory.
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  8971
        ] ifFalse: [
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  8972
            self updateForNoImage
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  8973
        ].
449
dac8dc1f9dc8 if none image found for loading clear all
tz
parents: 444
diff changeset
  8974
    ]
400
228524287573 intitial checkin
tz
parents:
diff changeset
  8975
!
228524287573 intitial checkin
tz
parents:
diff changeset
  8976
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  8977
doLoadFromFile
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  8978
    "opens a dialog for loading an image from a file"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  8979
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  8980
    |img file filters title|
1353
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  8981
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  8982
    self checkModified ifFalse:[ ^ self ].
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  8983
1380
9787c42843c2 allow display and extract from image sequences (gif anims)
Claus Gittinger <cg@exept.de>
parents: 1377
diff changeset
  8984
    imageSeqNr := nil.
1353
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  8985
    img := self image.
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  8986
    img notNil ifTrue: [
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  8987
        file := img fileName
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  8988
    ].
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  8989
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  8990
    title := (resources string:'Load Image from File:').
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  8991
3066
a8e197ceebed Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 3050
diff changeset
  8992
    (UserPreferences current useNativeFileDialog
3100
d2310ff3cbab class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3080
diff changeset
  8993
     and:[Screen current isWindowsPlatform]) ifTrue:[
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  8994
        self withWaitCursorDo:[
3066
a8e197ceebed Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 3050
diff changeset
  8995
            file := Screen current
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  8996
                nativeFileDialogFor:(self window topView id)
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  8997
                save:false
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  8998
                title:title
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  8999
                inDirectory:(file notNil ifTrue:[file asFilename directory pathName] ifFalse:[LastDirectory])
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9000
                initialAnswer:(file notNil ifTrue:[file asFilename baseName] ifFalse:['image.png'])
2827
c99d2c520b28 changed:
Claus Gittinger <cg@exept.de>
parents: 2826
diff changeset
  9001
                "/ flags:#( ENABLESIZING "HIDEREADONLY" EXPLORER NOCHANGEDIR)
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9002
                filter:
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9003
                  {
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9004
                          { (resources string:'Image Files') . '*.tif;*.png;*.gif;*.bmp;*.jpg'  } .
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9005
                          { (resources string:'All Files') . '*.*'  } 
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9006
                  }
2821
850aa6d37ea3 changed:
Claus Gittinger <cg@exept.de>
parents: 2820
diff changeset
  9007
                extension:nil
2827
c99d2c520b28 changed:
Claus Gittinger <cg@exept.de>
parents: 2826
diff changeset
  9008
                "blocking:false".
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9009
        ].
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9010
    ] ifFalse:[    
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9011
        filters := FileSelectionBrowser loadImageFileNameFilters.
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9012
        file notNil ifTrue:[
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9013
            file := FileSelectionBrowser
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9014
                        request:title
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9015
                        fileName:file
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9016
                        withFileFilters:filters.
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9017
        ] ifFalse:[
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9018
            file := FileSelectionBrowser
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9019
                        request:title
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9020
                        inDirectory:LastDirectory
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9021
                        withFileFilters:filters.
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9022
        ].
1353
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9023
    ].
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9024
1353
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9025
    file notNil ifTrue:[
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9026
        LastDirectory := file asFilename directoryName.
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9027
        self loadFromFile:file
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9028
    ]
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9029
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  9030
    "Modified: / 16-02-2017 / 10:53:41 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9031
!
228524287573 intitial checkin
tz
parents:
diff changeset
  9032
2796
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9033
doLoadFromURL
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9034
    "opens a dialog for loading an image from a URL"
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9035
2866
10f8ee0f23fe changed: #doLoadFromURL
Claus Gittinger <cg@exept.de>
parents: 2841
diff changeset
  9036
    |tempFile url response|
2796
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9037
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9038
    self checkModified ifFalse:[ ^ self ].
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9039
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9040
    url := Dialog 
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  9041
                request:(resources string:'Load Image from URL:')
2796
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9042
                initialAnswer:LastURL.
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9043
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9044
    url notEmptyOrNil ifTrue:[
3050
238571e2a33b class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3027
diff changeset
  9045
        HTTPInterface isNil ifTrue:[ Smalltalk loadPackage:'stx:goodies/communication'].
238571e2a33b class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3027
diff changeset
  9046
2796
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9047
        LastURL := url.
3027
50657c666fdc class: ImageEditor
Stefan Vogel <sv@exept.de>
parents: 3022
diff changeset
  9048
        tempFile := FileStream newTemporary close fileName.
2866
10f8ee0f23fe changed: #doLoadFromURL
Claus Gittinger <cg@exept.de>
parents: 2841
diff changeset
  9049
        self withWaitCursorDo:[
3492
f212578d1276 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3489
diff changeset
  9050
            |newURL|
f212578d1276 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3489
diff changeset
  9051
            
2866
10f8ee0f23fe changed: #doLoadFromURL
Claus Gittinger <cg@exept.de>
parents: 2841
diff changeset
  9052
            response := HTTPInterface get:url destinationFile:tempFile.
3492
f212578d1276 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3489
diff changeset
  9053
            response isMovedResponse ifTrue:[
f212578d1276 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3489
diff changeset
  9054
                newURL  := response location.
f212578d1276 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3489
diff changeset
  9055
                newURL ~= url ifTrue:[
f212578d1276 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3489
diff changeset
  9056
                    response := HTTPInterface get:newURL destinationFile:tempFile.
f212578d1276 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3489
diff changeset
  9057
                ].    
f212578d1276 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3489
diff changeset
  9058
            ].    
2866
10f8ee0f23fe changed: #doLoadFromURL
Claus Gittinger <cg@exept.de>
parents: 2841
diff changeset
  9059
        ].
10f8ee0f23fe changed: #doLoadFromURL
Claus Gittinger <cg@exept.de>
parents: 2841
diff changeset
  9060
        response isErrorResponse ifTrue:[
10f8ee0f23fe changed: #doLoadFromURL
Claus Gittinger <cg@exept.de>
parents: 2841
diff changeset
  9061
            Dialog warn:(resources string:'Could not load image ("%1")' with:response responseText).
10f8ee0f23fe changed: #doLoadFromURL
Claus Gittinger <cg@exept.de>
parents: 2841
diff changeset
  9062
        ] ifFalse:[
10f8ee0f23fe changed: #doLoadFromURL
Claus Gittinger <cg@exept.de>
parents: 2841
diff changeset
  9063
            self loadFromFile:tempFile.
10f8ee0f23fe changed: #doLoadFromURL
Claus Gittinger <cg@exept.de>
parents: 2841
diff changeset
  9064
        ].
2796
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9065
        tempFile delete
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9066
    ]
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9067
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9068
    "Created: / 20-09-2010 / 11:30:59 / cg"
3492
f212578d1276 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3489
diff changeset
  9069
    "Modified: / 13-09-2017 / 17:00:28 / cg"
2796
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9070
!
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9071
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9072
doNewImage
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9073
    "opens a dialog with choices of size and color map for creating a new image"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9074
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9075
    |dialogAspects width height cMapString cMapMode cMap imageClass image szString defaultSize ext depth|
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9076
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9077
    self checkModified ifFalse:[ ^ self ].
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9078
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9079
    defaultSize := (self class listOfDefaultSizes includes:'32x32') 
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9080
                        ifTrue:['32x32'] 
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9081
                        ifFalse:[self class listOfDefaultSizes first].
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9082
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9083
    dialogAspects  := IdentityDictionary new
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9084
        at:#listOfSizes         put: self class listOfDefaultSizes asValue;
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9085
        at:#listOfColorMaps     put: self class namesOfColorMaps values asSortedCollection asValue;
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9086
        at:#selectionOfSize     put: (LastSizeString ? defaultSize) asValue;
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9087
        at:#selectionOfColorMap put: (LastColormapMode ? self class namesOfColorMaps values asSortedCollection first) asValue;
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9088
        yourself.
228524287573 intitial checkin
tz
parents:
diff changeset
  9089
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9090
    (self openDialogInterface:#dialogSpecForNewImage withBindings:dialogAspects)
1383
179597c2abed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1381
diff changeset
  9091
    ifTrue:[
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9092
        szString := (dialogAspects at:#selectionOfSize) value.
1960
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  9093
        ext := self pointFromString:szString.
1962
9166ba3ce7c3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1961
diff changeset
  9094
        ext isNil ifTrue:[
9166ba3ce7c3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1961
diff changeset
  9095
            width := height := 32
9166ba3ce7c3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1961
diff changeset
  9096
        ] ifFalse:[
9166ba3ce7c3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1961
diff changeset
  9097
            width := ext x.
9166ba3ce7c3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1961
diff changeset
  9098
            height := ext y.
9166ba3ce7c3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1961
diff changeset
  9099
        ].
1960
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  9100
"/        width  := "128 min: "(Integer readFromString: (szString upTo: $x) onError:[32]).
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  9101
"/        height := "128 min: " (Integer readFromString: (szString copy reverse upTo: $x) reverse onError:[32]).
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9102
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9103
        cMapString := (dialogAspects at:#selectionOfColorMap) value.
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9104
        cMapMode   := self class namesOfColorMaps keyAtEqualValue:cMapString.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9105
        cMap       := self class listOfColorMaps at:cMapMode.
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9106
        depth := (cMapMode startsWith:'depth') 
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9107
                    ifTrue:[ Integer readFrom:(cMapMode copyFrom:'depth' size + 1) ]
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9108
                    ifFalse:[ 
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9109
                        (cMapMode startsWith:'masked') 
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9110
                            ifTrue:[ Integer readFrom:(cMapMode copyFrom:'masked' size + 1) ]
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9111
                            ifFalse:[ cMap size highBit-1 ]].
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9112
        imageClass := Image implementorForDepth:depth.
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9113
        image      := imageClass width: width height: height.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9114
        image bits:(ByteArray new:(image bytesPerRow*height)).
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9115
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  9116
        LastSizeString := szString.
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  9117
        LastColormapMode := cMapString.
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  9118
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9119
        (cMapMode startsWith:'mask') ifTrue:[
3125
9d5624af77ab Sending of Image>>#clearMaskedPixels moved to Image >> #asFormOnDevice:
Stefan Vogel <sv@exept.de>
parents: 3122
diff changeset
  9120
            image mask: (ImageMask width: width height: height depth: 1 fromArray: (ByteArray new: width*height)).
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9121
        ].
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9122
        depth == 32 ifTrue:[
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9123
            image photometric:#rgba
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9124
        ] ifFalse:[    
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9125
            image colorMap: cMap.
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9126
        ].
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9127
        (imageEditView image: image) notNil ifTrue:[
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9128
            self updateListOfColorsAndColormapMode.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9129
            self updateLabelsAndHistory.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9130
        ].
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9131
        image fillRectangleX:0 y:0 width:width height:height with:Color white.
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9132
    ]
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9133
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9134
    "Modified: / 13-09-2017 / 23:57:52 / cg"
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
  9135
!
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
  9136
2058
584f6f6bb171 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2054
diff changeset
  9137
doNewImageEditor
584f6f6bb171 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2054
diff changeset
  9138
    "opens a new image editor"
584f6f6bb171 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2054
diff changeset
  9139
584f6f6bb171 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2054
diff changeset
  9140
    ImageEditor open
584f6f6bb171 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2054
diff changeset
  9141
584f6f6bb171 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2054
diff changeset
  9142
    "Created: / 17-08-2006 / 09:03:14 / cg"
584f6f6bb171 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2054
diff changeset
  9143
!
584f6f6bb171 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2054
diff changeset
  9144
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  9145
doNewImageFromClipboard
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  9146
    |image|
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  9147
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9148
    self checkModified ifFalse:[ ^ self ].
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9149
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  9150
    image := imageEditView clipBoardImage.
3164
890b62a044be class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3157
diff changeset
  9151
    image isImageOrForm ifFalse:[
890b62a044be class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3157
diff changeset
  9152
        image := Image readFrom:(image asString) onError:nil.
890b62a044be class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3157
diff changeset
  9153
        image isNil ifTrue:[
890b62a044be class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3157
diff changeset
  9154
            Dialog warn:'Clipboard does not contain an image I can use/understand'.
890b62a044be class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3157
diff changeset
  9155
            ^ self.
890b62a044be class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3157
diff changeset
  9156
        ].
890b62a044be class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3157
diff changeset
  9157
    ].
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  9158
    
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9159
    imageEditView image:image.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9160
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9161
    image notNil ifTrue:[
1900
41ba86fb1087 cleanup
Claus Gittinger <cg@exept.de>
parents: 1899
diff changeset
  9162
        self updateColorsFromImage:image.
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  9163
        self findColorMapMode.
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  9164
        self updateLabelsAndHistory.
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  9165
    ]
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  9166
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  9167
    "Modified (format): / 08-10-2017 / 08:58:03 / cg"
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  9168
!
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  9169
3200
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9170
doNewMaskFromClipboard
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9171
    |mask image newImage|
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9172
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9173
    self checkModified ifFalse:[ ^ self ].
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9174
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  9175
    mask := imageEditView clipBoardImage.
3200
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9176
    mask isImageOrForm ifFalse:[
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9177
        mask := Image readFrom:(mask asString) onError:nil.
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9178
        mask isNil ifTrue:[
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9179
            Dialog warn:'Clipboard does not contain an image I can use/understand'.
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9180
            ^ self.
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9181
        ].
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9182
    ].
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  9183
    
3200
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9184
    (image:= imageEditView image) isNil ifTrue:[
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9185
        image := mask.
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9186
    ].
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9187
    mask extent ~= image extent ifTrue:[
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9188
        mask := imageEditView resizedImage:mask to:image extent.
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9189
    ].
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9190
    newImage := image copy.
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9191
    newImage mask:mask.
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9192
    imageEditView newImageWithUndo:newImage.
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9193
    self updateAfterImageChange.
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  9194
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  9195
    "Modified (format): / 08-10-2017 / 08:57:58 / cg"
3200
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9196
!
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9197
3422
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9198
grabFullScreenImage
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9199
    "grab all for editing"
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9200
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9201
    self grabScreenImageUsing:[ 
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9202
        Image fromScreen
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9203
    ].
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9204
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9205
    "Created: / 25-02-2017 / 12:41:29 / cg"
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9206
!
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9207
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
  9208
grabScreenImage
3422
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9209
    "let user choose an area and grab that area for editing"
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
  9210
2707
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9211
    self grabScreenImageUsing:[ 
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9212
        |r|
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9213
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9214
        [Screen current leftButtonPressed] whileTrue:[Delay waitForSeconds:0.05].
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9215
        r := Rectangle fromUser.
2708
c180af16b1b3 changed:
Claus Gittinger <cg@exept.de>
parents: 2707
diff changeset
  9216
        (r width == 0 or:[r height == 0]) ifTrue:[
c180af16b1b3 changed:
Claus Gittinger <cg@exept.de>
parents: 2707
diff changeset
  9217
            nil
c180af16b1b3 changed:
Claus Gittinger <cg@exept.de>
parents: 2707
diff changeset
  9218
        ] ifFalse:[
c180af16b1b3 changed:
Claus Gittinger <cg@exept.de>
parents: 2707
diff changeset
  9219
            lastGrabbedScreenArea := r.
c180af16b1b3 changed:
Claus Gittinger <cg@exept.de>
parents: 2707
diff changeset
  9220
            Image fromScreen:r
c180af16b1b3 changed:
Claus Gittinger <cg@exept.de>
parents: 2707
diff changeset
  9221
        ]
2707
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9222
    ].
3422
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9223
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9224
    "Modified (comment): / 25-02-2017 / 12:41:00 / cg"
2707
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9225
!
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9226
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9227
grabScreenImageFromLastArea
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9228
    "grab again from the previous area for editing"
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9229
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9230
    self grabScreenImageUsing:[ 
2708
c180af16b1b3 changed:
Claus Gittinger <cg@exept.de>
parents: 2707
diff changeset
  9231
        Image fromScreen:lastGrabbedScreenArea
2707
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9232
    ].
2701
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9233
!
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9234
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9235
grabScreenImageUsing:aBlock
3422
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9236
    "let user choose an area and grab that area for editing"
2701
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9237
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9238
    self checkModified ifFalse:[ ^ self ].
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9239
990
4303f0064410 delay a second before grabbing screen image (to allow for redraws to happen)
Claus Gittinger <cg@exept.de>
parents: 986
diff changeset
  9240
    Processor 
4303f0064410 delay a second before grabbing screen image (to allow for redraws to happen)
Claus Gittinger <cg@exept.de>
parents: 986
diff changeset
  9241
        addTimedBlock:[
4303f0064410 delay a second before grabbing screen image (to allow for redraws to happen)
Claus Gittinger <cg@exept.de>
parents: 986
diff changeset
  9242
            |image d8image img|
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
  9243
1380
9787c42843c2 allow display and extract from image sequences (gif anims)
Claus Gittinger <cg@exept.de>
parents: 1377
diff changeset
  9244
            imageSeqNr := nil.
2701
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9245
            image := aBlock value.
2708
c180af16b1b3 changed:
Claus Gittinger <cg@exept.de>
parents: 2707
diff changeset
  9246
            image notNil ifTrue:[
1121
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9247
                image depth > 8 ifTrue:[
2420
14678b9fea60 grabScreenImage - do not convert to 8bit; leave as is initially
Claus Gittinger <cg@exept.de>
parents: 2375
diff changeset
  9248
false ifTrue:[
1687
f4543a556b89 Convert Object>>errorSignal -> Error
Stefan Vogel <sv@exept.de>
parents: 1682
diff changeset
  9249
                    Error handle:[:ex | |sig|
2996
a1090695cfbc class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 2992
diff changeset
  9250
                        (sig := ex creator) == HaltInterrupt ifTrue:[ex reject].
1122
66e895f34b9b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1121
diff changeset
  9251
                        sig == Signal noHandlerSignal ifTrue:[ex reject].
1121
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9252
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9253
                        self warn:'Could not convert to depth8 image (too many colors)'.
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9254
                        d8image := nil.
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9255
                    ] do:[
2420
14678b9fea60 grabScreenImage - do not convert to 8bit; leave as is initially
Claus Gittinger <cg@exept.de>
parents: 2375
diff changeset
  9256
                        d8image := Depth8Image fromImage:image photometric:#palette.
1121
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9257
                    ].
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9258
                    d8image notNil ifTrue:[
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9259
                        image := d8image
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9260
                    ]
2420
14678b9fea60 grabScreenImage - do not convert to 8bit; leave as is initially
Claus Gittinger <cg@exept.de>
parents: 2375
diff changeset
  9261
].
990
4303f0064410 delay a second before grabbing screen image (to allow for redraws to happen)
Claus Gittinger <cg@exept.de>
parents: 986
diff changeset
  9262
                ].
1121
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9263
                (imageEditView image:image) notNil ifTrue:[
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9264
                    self listOfColors contents:(image colorMap).
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9265
                    self findColorMapMode.
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9266
                    self updateLabelsAndHistory.
990
4303f0064410 delay a second before grabbing screen image (to allow for redraws to happen)
Claus Gittinger <cg@exept.de>
parents: 986
diff changeset
  9267
                ]
1121
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9268
             ] 
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9269
        ] 
990
4303f0064410 delay a second before grabbing screen image (to allow for redraws to happen)
Claus Gittinger <cg@exept.de>
parents: 986
diff changeset
  9270
        afterSeconds:1
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
  9271
3422
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9272
    "Created: / 29-07-1998 / 21:24:42 / cg"
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9273
    "Modified: / 16-11-2001 / 16:21:19 / cg"
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9274
    "Modified (comment): / 25-02-2017 / 12:41:06 / cg"
1380
9787c42843c2 allow display and extract from image sequences (gif anims)
Claus Gittinger <cg@exept.de>
parents: 1377
diff changeset
  9275
!
9787c42843c2 allow display and extract from image sequences (gif anims)
Claus Gittinger <cg@exept.de>
parents: 1377
diff changeset
  9276
2701
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9277
grabWindowImage
3422
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9278
    "let user choose a window and grab its area for editing"
2701
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9279
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9280
    self grabScreenImageUsing:[
3188
351c645c0921 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3180
diff changeset
  9281
        |v topView|
2701
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9282
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9283
        (v := Screen current viewFromUser) notNil ifTrue:[
3188
351c645c0921 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3180
diff changeset
  9284
            topView := v topView.
351c645c0921 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3180
diff changeset
  9285
            topView raise; makeFullyVisible.
2704
0791984eef02 changed: #grabWindowImage
Claus Gittinger <cg@exept.de>
parents: 2701
diff changeset
  9286
            Delay waitForSeconds:0.5.   "/ give view a chance to redraw itself.
3188
351c645c0921 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3180
diff changeset
  9287
            Image fromView:topView
2701
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9288
        ].
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9289
    ].
3422
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9290
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9291
    "Modified (comment): / 25-02-2017 / 12:41:20 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9292
! !
228524287573 intitial checkin
tz
parents:
diff changeset
  9293
1715
9eebdb3802aa method category rename
Claus Gittinger <cg@exept.de>
parents: 1713
diff changeset
  9294
!ImageEditor methodsFor:'user actions-saving'!
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9295
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9296
doPrint
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9297
    "prints current image on the current printer"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9298
1734
98ebea4111f9 waitCursor while printing
Claus Gittinger <cg@exept.de>
parents: 1728
diff changeset
  9299
    self withWaitCursorDo:[
98ebea4111f9 waitCursor while printing
Claus Gittinger <cg@exept.de>
parents: 1728
diff changeset
  9300
        imageEditView print
98ebea4111f9 waitCursor while printing
Claus Gittinger <cg@exept.de>
parents: 1728
diff changeset
  9301
    ]
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9302
!
228524287573 intitial checkin
tz
parents:
diff changeset
  9303
1613
1d4f11252d3b saveAsButtonImage added
ca
parents: 1611
diff changeset
  9304
doSaveButtonImageToFileAs
3375
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  9305
    "opens a dialog for saving current image to a file.
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  9306
     Saved as a button image (i.e. with a frame around)"
1613
1d4f11252d3b saveAsButtonImage added
ca
parents: 1611
diff changeset
  9307
1d4f11252d3b saveAsButtonImage added
ca
parents: 1611
diff changeset
  9308
    imageEditView saveButtonImageToFileAs.
1d4f11252d3b saveAsButtonImage added
ca
parents: 1611
diff changeset
  9309
    self updateLabelsAndHistory.
1d4f11252d3b saveAsButtonImage added
ca
parents: 1611
diff changeset
  9310
!
1d4f11252d3b saveAsButtonImage added
ca
parents: 1611
diff changeset
  9311
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9312
doSaveImageFile
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9313
    "saves current image to current file"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9314
1481
32f1fd9d0f15 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1480
diff changeset
  9315
    imageEditView save.
3379
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  9316
    self clearModifiedAndRememberImageSaved.
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9317
!
228524287573 intitial checkin
tz
parents:
diff changeset
  9318
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9319
doSaveImageFileAs
1922
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9320
    "opens a dialog for saving an image to a file"
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9321
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9322
    |img file filters|
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9323
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9324
    img := self image.
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9325
    img notNil ifTrue: [
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9326
        file := img fileName
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9327
    ].
3426
6d0987492205 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3425
diff changeset
  9328
    
2595
e1eeda9d1639 changed: #doSaveImageFileAs
Claus Gittinger <cg@exept.de>
parents: 2592
diff changeset
  9329
    filters := FileSelectionBrowser saveImageFileNameFilters.
1922
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9330
3066
a8e197ceebed Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 3050
diff changeset
  9331
    (UserPreferences current useNativeFileDialog
3100
d2310ff3cbab class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3080
diff changeset
  9332
     and:[Screen current isWindowsPlatform]) ifTrue:[
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9333
        self withWaitCursorDo:[
3379
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  9334
            "/ windows only
3066
a8e197ceebed Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 3050
diff changeset
  9335
            file := Screen current
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9336
                nativeFileDialogFor:(self window topView id)
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9337
                save:true
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  9338
                title:(resources string:'Save Image in File')
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9339
                inDirectory:(file notNil ifTrue:[file asFilename directory pathName] ifFalse:[LastDirectory])
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9340
                initialAnswer:(file notNil ifTrue:[file asFilename baseName] ifFalse:['image.png'])
2827
c99d2c520b28 changed:
Claus Gittinger <cg@exept.de>
parents: 2826
diff changeset
  9341
                "/ flags:#( ENABLESIZING "HIDEREADONLY" EXPLORER NOCHANGEDIR)
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9342
                filter:
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9343
                  {
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9344
                          { (resources string:'Image Files') . '*.tif;*.png;*.gif;*.bmp'  } .
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9345
                          { (resources string:'All Files') . '*.*'  } 
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9346
                  }
2821
850aa6d37ea3 changed:
Claus Gittinger <cg@exept.de>
parents: 2820
diff changeset
  9347
                extension:nil
2827
c99d2c520b28 changed:
Claus Gittinger <cg@exept.de>
parents: 2826
diff changeset
  9348
                "blocking:false".
2807
b89a09017a97 changed: #doSaveImageFileAs
Claus Gittinger <cg@exept.de>
parents: 2796
diff changeset
  9349
        ].
3425
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  9350
    ] ifFalse:[ 
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  9351
        img fileName isNil ifTrue:[
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  9352
            LastDirectory notNil ifTrue:[
3426
6d0987492205 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3425
diff changeset
  9353
                file isNil ifTrue:[
6d0987492205 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3425
diff changeset
  9354
                    file := 'image.png'.
6d0987492205 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3425
diff changeset
  9355
                ].
3425
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  9356
                file := LastDirectory asFilename construct:(file asFilename baseName).
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  9357
            ].    
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  9358
        ].    
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9359
        (FileSelectionBrowser isNil or:[DirectoryView isNil]) ifTrue:[
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9360
            file notNil ifTrue:[
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9361
                file := Dialog requestFileName:'Save Image To'
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9362
                            default:file
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9363
                            pattern:(filters first).
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9364
            ] ifFalse:[
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9365
                file := Dialog
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9366
                            requestFileName:'Save Image To'
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9367
                            default:'image.png'
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9368
                            pattern:(filters first)
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9369
                            fromDirectory:LastDirectory.
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9370
            ].
2807
b89a09017a97 changed: #doSaveImageFileAs
Claus Gittinger <cg@exept.de>
parents: 2796
diff changeset
  9371
        ] ifFalse:[
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9372
            file notNil ifTrue:[
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9373
                file := FileSelectionBrowser
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9374
                            request:'Save Image To'
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9375
                            fileName:file
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9376
                            withFileFilters:filters.
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9377
            ] ifFalse:[
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9378
                file := FileSelectionBrowser
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  9379
                            request:'Save Image in File:'
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9380
                            inDirectory:LastDirectory
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9381
                            withFileFilters:filters.
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9382
            ].
2807
b89a09017a97 changed: #doSaveImageFileAs
Claus Gittinger <cg@exept.de>
parents: 2796
diff changeset
  9383
        ].
1922
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9384
    ].
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9385
    file notNil ifTrue:[
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9386
        imageEditView saveImageFileAs:file.
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9387
        LastDirectory := file asFilename directoryName.
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9388
        self updateLabelsAndHistory.
3379
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  9389
        self clearModifiedAndRememberImageSavedAsFile:file.
1922
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9390
    ]
2807
b89a09017a97 changed: #doSaveImageFileAs
Claus Gittinger <cg@exept.de>
parents: 2796
diff changeset
  9391
3426
6d0987492205 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3425
diff changeset
  9392
    "Modified: / 27-02-2017 / 01:26:05 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9393
!
228524287573 intitial checkin
tz
parents:
diff changeset
  9394
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9395
doSaveImageMaskFileAs
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9396
    "opens a dialog for saving mask of current image to a file"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9397
1481
32f1fd9d0f15 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1480
diff changeset
  9398
    imageEditView saveImageMaskFileAs.
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9399
!
228524287573 intitial checkin
tz
parents:
diff changeset
  9400
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9401
doSaveMethod
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9402
    "saves the image in current class and selector"
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9403
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9404
    imageEditView saveMethod ifTrue:[
2006
ae6fe65e9f33 embedding as special editors
Claus Gittinger <cg@exept.de>
parents: 1998
diff changeset
  9405
        self updateLabelsAndHistory.
3379
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  9406
        self clearModifiedAndRememberImageSaved.
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9407
    ]
228524287573 intitial checkin
tz
parents:
diff changeset
  9408
!
228524287573 intitial checkin
tz
parents:
diff changeset
  9409
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9410
doSaveMethodAs
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9411
    "opens a dialog for saving current image on a class and a selector"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9412
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9413
    imageEditView saveMethodAs ifTrue:[
2006
ae6fe65e9f33 embedding as special editors
Claus Gittinger <cg@exept.de>
parents: 1998
diff changeset
  9414
        self updateLabelsAndHistory.
3379
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  9415
        self clearModifiedAndRememberImageSaved.
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9416
    ]
1309
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9417
!
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9418
3022
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9419
doShowPixelArrayLiteralString
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9420
    "opens a dialog showing a literal array-like storeString
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9421
     (sometimes useful to embed an image into source code)"
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9422
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9423
    |img|
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9424
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9425
    img := imageEditView image.
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9426
    TextBox openOn:img bits storeString
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9427
!
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9428
1309
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9429
doShowStoreString
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9430
    "opens a dialog showing the storeString
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9431
     (sometimes useful to embed an image into source code)"
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9432
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9433
    |img|
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9434
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9435
    img := imageEditView image.
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9436
    TextBox openOn:img storeString
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9437
!
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9438
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9439
save
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9440
    "saves current image on current class and selector"
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9441
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9442
    self doSaveMethod
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9443
! !
228524287573 intitial checkin
tz
parents:
diff changeset
  9444
1715
9eebdb3802aa method category rename
Claus Gittinger <cg@exept.de>
parents: 1713
diff changeset
  9445
!ImageEditor methodsFor:'user actions-settings'!
1353
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9446
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9447
doChangeGridMagnification
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9448
    "change grid magnification"
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9449
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9450
    |box oldGridLimit newGridLimit|
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9451
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9452
    oldGridLimit := imageEditView class gridMagnificationLimit asPoint.
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9453
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9454
    box := EnterBox new.
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9455
    box title:(resources string:'Grid Magnification Limit:').
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9456
    box okText:(resources string:'OK').
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9457
    box abortText:(resources string:'Cancel').
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9458
    box initialText:(oldGridLimit x printString).
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9459
    box showAtPointer.
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9460
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9461
    (box accepted 
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9462
    and: [(newGridLimit := Number readFromString:(box contents) onError:[2]) notNil]
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9463
    ) ifTrue:[
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9464
        newGridLimit := (99 min: (2 max:newGridLimit)) asPoint.
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9465
        imageEditView class gridMagnificationLimit:newGridLimit.
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9466
        imageEditView invalidate
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9467
    ]
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9468
2192
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  9469
!
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  9470
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  9471
penWidth:n
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  9472
    imageEditView penWidth:n
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  9473
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  9474
    "Created: / 01-11-2007 / 23:47:48 / cg"
2375
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  9475
!
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  9476
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9477
penWidthHolderChanged
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9478
    imageEditView penWidth:(self penWidthHolder value)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9479
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9480
    "Created: / 15-02-2012 / 22:32:00 / cg"
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9481
!
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9482
2375
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  9483
spraySpot:n
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  9484
    imageEditView spraySpot:n
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  9485
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  9486
    "Created: / 01-11-2007 / 23:47:48 / cg"
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9487
!
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9488
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9489
spraySpotHolderChanged
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9490
    imageEditView spraySpot:(self spraySpotHolder value)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9491
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9492
    "Created: / 15-02-2012 / 22:37:08 / cg"
1353
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9493
! !
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9494
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9495
!ImageEditor class methodsFor:'documentation'!
228524287573 intitial checkin
tz
parents:
diff changeset
  9496
228524287573 intitial checkin
tz
parents:
diff changeset
  9497
version
228524287573 intitial checkin
tz
parents:
diff changeset
  9498
    ^ '$Header$'
2590
9f2cb061d07f changed: #menuToolbar
Claus Gittinger <cg@exept.de>
parents: 2585
diff changeset
  9499
!
9f2cb061d07f changed: #menuToolbar
Claus Gittinger <cg@exept.de>
parents: 2585
diff changeset
  9500
9f2cb061d07f changed: #menuToolbar
Claus Gittinger <cg@exept.de>
parents: 2585
diff changeset
  9501
version_CVS
9f2cb061d07f changed: #menuToolbar
Claus Gittinger <cg@exept.de>
parents: 2585
diff changeset
  9502
    ^ '$Header$'
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9503
! !
2945
facf3c7b0e31 changed: #processEvent:
Claus Gittinger <cg@exept.de>
parents: 2932
diff changeset
  9504