ImageEditor.st
author mawalch
Wed, 28 Feb 2018 16:32:25 +0100
changeset 3545 b3e0ca689991
parent 3543 06dbbe8684c7
child 3546 4ee729a8a483
permissions -rw-r--r--
#UI_ENHANCEMENT by mawalch class: MenuEditor class changed: #windowSpec Fix bad position of buttons.
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
3530
e26aace861c6 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3526
diff changeset
    50
    The actual drawing functionality is found in ImageEditView;
e26aace861c6 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3526
diff changeset
    51
    the code here (an appModel) provides nice menus, previews, colormap manipulation etc.
e26aace861c6 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3526
diff changeset
    52
400
228524287573 intitial checkin
tz
parents:
diff changeset
    53
    [start with:]
228524287573 intitial checkin
tz
parents:
diff changeset
    54
        ImageEditor open
941
6d75430a8120 fixed start call in docu
tz
parents: 937
diff changeset
    55
        ImageEditor openOnClass:Icon andSelector:#startIcon
3466
2d5ea09863c6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3465
diff changeset
    56
        (Image fromFile:'../../goodies/bitmaps/gifImages/garfield.gif') edit
2d5ea09863c6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3465
diff changeset
    57
        (Image fromScreen:(0@0 corner:100@100)) edit
400
228524287573 intitial checkin
tz
parents:
diff changeset
    58
228524287573 intitial checkin
tz
parents:
diff changeset
    59
    [see also:]
228524287573 intitial checkin
tz
parents:
diff changeset
    60
        ImageEditView Image
228524287573 intitial checkin
tz
parents:
diff changeset
    61
228524287573 intitial checkin
tz
parents:
diff changeset
    62
    [author:]
544
8fa6ee20c3cd help menu item aligned to the right
tz
parents: 535
diff changeset
    63
        Thomas Zwick, eXept Software AG
1806
2d642633ff7b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1799
diff changeset
    64
        Claus Gittinger, eXept Software AG
400
228524287573 intitial checkin
tz
parents:
diff changeset
    65
"
228524287573 intitial checkin
tz
parents:
diff changeset
    66
! !
228524287573 intitial checkin
tz
parents:
diff changeset
    67
228524287573 intitial checkin
tz
parents:
diff changeset
    68
!ImageEditor class methodsFor:'instance creation'!
228524287573 intitial checkin
tz
parents:
diff changeset
    69
3357
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
    70
openLoadingImageWith:aBlock modal:modalBoolean
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
    71
    "opens an Image Editor on anImage.
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
    72
     Returns the editor (to access its attributes)"
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    73
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    74
    |editor|
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    75
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    76
    editor := self new.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    77
    editor allButOpen.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    78
    aBlock value:editor.
3357
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
    79
    modalBoolean ifTrue:[
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
    80
        editor openWindowModal.
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
    81
    ] ifFalse:[
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
    82
        editor openWindow.
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
    83
    ].
2764
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
    84
    ^ editor
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
    85
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
    86
    "Modified (comment): / 07-03-2017 / 16:36:16 / cg"
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    87
!
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    88
400
228524287573 intitial checkin
tz
parents:
diff changeset
    89
openModalOnClass: aClass andSelector: aSelector
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    90
    "opens a modal Image Editor on aClass and aSelector.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    91
     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
    92
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    93
    |imageEditor imageEditView className resourceClass resourceSelector| 
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
    94
400
228524287573 intitial checkin
tz
parents:
diff changeset
    95
    imageEditor := self new.
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
    96
900
5dd8303a9bb5 opens an Image Editor in any case
tz
parents: 899
diff changeset
    97
    aClass isClass  ifTrue: [className := aClass name].
5dd8303a9bb5 opens an Image Editor in any case
tz
parents: 899
diff changeset
    98
    aClass isString ifTrue: [className := aClass].      
903
63203d996e61 openModal bug fixed
tz
parents: 901
diff changeset
    99
    aClass isNil    ifTrue: [className := ''].      
400
228524287573 intitial checkin
tz
parents:
diff changeset
   100
2764
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   101
    imageEditor postOpenAction: [
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   102
            imageEditView := imageEditor imageEditView. 
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   103
            imageEditor loadFromOrPrepareForClass: aClass andSelector: aSelector
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   104
        ].
400
228524287573 intitial checkin
tz
parents:
diff changeset
   105
    imageEditor openModal.
228524287573 intitial checkin
tz
parents:
diff changeset
   106
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
   107
    resourceClass := imageEditView resourceClass.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
   108
    resourceSelector := imageEditView resourceSelector.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
   109
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
   110
    (resourceClass isNil or:[resourceSelector isNil]) ifTrue:[^ nil].
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
   111
    ^ Array with:resourceClass with:resourceSelector
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   112
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   113
    "
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   114
     self openModalOnClass: self andSelector: #leftMouseKeyIcon
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   115
    "
400
228524287573 intitial checkin
tz
parents:
diff changeset
   116
!
228524287573 intitial checkin
tz
parents:
diff changeset
   117
3357
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
   118
openModalOnFile:aFileName
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   119
    "opens an Image Editor on aFileName.
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   120
     Returns the editor (to access its attributes)"
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   121
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   122
    ^ self openOnFile:aFileName modal:true
3357
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
   123
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
   124
    "
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
   125
     self openModalOnFile: '../../goodies/bitmaps/gifImages/back.gif'
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
   126
    "
3411
fd6472405fd0 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3409
diff changeset
   127
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   128
    "Modified: / 07-03-2017 / 16:36:32 / cg"
3357
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
   129
!
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
   130
2764
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   131
openModalOnImage:anImage
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   132
    "opens a modal Image Editor on an image.
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   133
     Returns the modified image or nil if unsaved/unchanged"
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   134
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   135
    |imageEditor imageEditView newImage| 
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   136
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   137
    imageEditor := self new.
2767
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
   138
    imageEditor allowedToChangeImageDimensionAndDepth:false.
2764
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   139
    imageEditor postOpenAction: [
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   140
            imageEditView := imageEditor imageEditView. 
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   141
            imageEditor loadFromImage: anImage
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   142
        ].
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   143
    imageEditor openModal.
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   144
2766
88fa6c4bf6d3 changed: #openModalOnImage:
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   145
    newImage := imageEditor savedImage.
2764
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   146
    ^ newImage
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   147
!
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   148
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   149
openOnClass:aClass andSelector:aSelector
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   150
    "opens an Image Editor on aClass and aSelector.
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   151
     Returns the editor (to access its attributes)"
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   152
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   153
    ^ self openOnClass:aClass andSelector:aSelector modal:false
1057
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
   154
1966
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
     self openOnClass:self andSelector:#leftMouseKeyIcon
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   157
     self openOnClass:self andSelector:nil
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   158
    "
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   159
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   160
    "Modified: / 07-03-2017 / 16:36:58 / cg"
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   161
!
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   162
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   163
openOnClass:aClass andSelector:aSelector modal:modal
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   164
    "opens an Image Editor on aClass and aSelector.
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   165
     Returns the editor (to access its attributes)"
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   166
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   167
    ^ self 
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   168
        openLoadingImageWith:[:editor | 
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   169
            editor loadFromClass:(aClass theNonMetaclass) andSelector:aSelector
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
        modal:modal.
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   172
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
     self openOnClass:self andSelector:#leftMouseKeyIcon modal:true
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   175
     self openOnClass:self andSelector:nil
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   176
    "
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   177
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   178
    "Created: / 07-03-2017 / 16:34:36 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
   179
!
228524287573 intitial checkin
tz
parents:
diff changeset
   180
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   181
openOnFile:aFileName
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   182
    "opens an Image Editor on aFileName.
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   183
     Returns the editor (to access its attributes)"
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   184
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   185
    ^ self openOnFile:aFileName modal:false   
1057
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
   186
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   187
    "
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
   188
     self openOnFile: '../../goodies/bitmaps/gifImages/back.gif'
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   189
    "
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   190
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   191
    "Modified: / 07-03-2017 / 16:37:33 / cg"
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   192
!
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   193
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   194
openOnFile:aFileName modal:modal
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   195
    "opens an Image Editor on aFileName.
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   196
     Returns the editor (to access its attributes)"
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   197
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   198
    ^ self 
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   199
        openLoadingImageWith:[:editor | 
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   200
            editor loadFromFile:aFileName.
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
        modal:modal.
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   203
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
     self openOnFile: '../../goodies/bitmaps/gifImages/back.gif' modal:false
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   206
     self openOnFile: '../../goodies/bitmaps/gifImages/back.gif' modal:true
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   207
    "
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   208
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   209
    "Created: / 07-03-2017 / 16:33:12 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
   210
!
228524287573 intitial checkin
tz
parents:
diff changeset
   211
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   212
openOnImage:anImage
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   213
    "opens an Image Editor on anImage.
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   214
     Returns the editor (to access its attributes)"
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   215
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   216
    ^ self 
3375
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
   217
        openLoadingImageWith:[:editor | editor loadFromImage: anImage ] 
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
   218
        modal:false
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
   219
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   220
    "
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   221
     self openOnImage: Icon startIcon
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   222
    "
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   223
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   224
    "Modified: / 07-03-2017 / 16:37:57 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
   225
! !
228524287573 intitial checkin
tz
parents:
diff changeset
   226
228524287573 intitial checkin
tz
parents:
diff changeset
   227
!ImageEditor class methodsFor:'accessing'!
228524287573 intitial checkin
tz
parents:
diff changeset
   228
228524287573 intitial checkin
tz
parents:
diff changeset
   229
listOfColorMaps
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
   230
    "returns the list of default color maps for a new image"
400
228524287573 intitial checkin
tz
parents:
diff changeset
   231
228524287573 intitial checkin
tz
parents:
diff changeset
   232
    |colorMap|
898
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   233
400
228524287573 intitial checkin
tz
parents:
diff changeset
   234
    (colorMap := OrderedCollection new)
228524287573 intitial checkin
tz
parents:
diff changeset
   235
        add: Color black;
228524287573 intitial checkin
tz
parents:
diff changeset
   236
        add: Color white;
228524287573 intitial checkin
tz
parents:
diff changeset
   237
        add: Color red;
228524287573 intitial checkin
tz
parents:
diff changeset
   238
        add: Color green;
228524287573 intitial checkin
tz
parents:
diff changeset
   239
        add: Color blue;
228524287573 intitial checkin
tz
parents:
diff changeset
   240
        add: Color cyan;
228524287573 intitial checkin
tz
parents:
diff changeset
   241
        add: Color yellow;
228524287573 intitial checkin
tz
parents:
diff changeset
   242
        add: Color magenta;
898
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   243
        add: (Color redByte: 127 greenByte:   0 blueByte:   0);
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   244
        add: (Color redByte:   0 greenByte: 127 blueByte:   0);
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   245
        add: (Color redByte:   0 greenByte:   0 blueByte: 127);
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   246
        add: (Color redByte:   0 greenByte: 127 blueByte: 127);
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   247
        add: (Color redByte: 127 greenByte: 127 blueByte:   0);
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   248
        add: (Color redByte: 127 greenByte:   0 blueByte: 127);
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   249
        add: (Color redByte: 127 greenByte: 127 blueByte: 127);
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   250
        add: (Color redByte: 170 greenByte: 170 blueByte: 170).
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   251
3346
15a3fc3d13d9 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3344
diff changeset
   252
    0 to: 5 do: [:r|                                                    
15a3fc3d13d9 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3344
diff changeset
   253
        0 to: 5 do: [:g|
15a3fc3d13d9 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3344
diff changeset
   254
            0 to: 5 do: [:b|
898
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   255
                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
   256
            ]
228524287573 intitial checkin
tz
parents:
diff changeset
   257
        ]
228524287573 intitial checkin
tz
parents:
diff changeset
   258
    ].
228524287573 intitial checkin
tz
parents:
diff changeset
   259
3346
15a3fc3d13d9 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3344
diff changeset
   260
    1 to: 25 do: [:g|                             
898
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   261
        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
   262
    ].
228524287573 intitial checkin
tz
parents:
diff changeset
   263
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   264
    ^ Dictionary new
2571
8b182cc4cac7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2567
diff changeset
   265
        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
   266
        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
   267
        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
   268
        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
   269
        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
   270
        at: #depth8  put: colorMap;
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   271
        at: #masked8 put: colorMap;
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   272
        at: #depth4  put: (colorMap copyFrom: 1 to: 16);
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   273
        at: #masked4 put: (colorMap copyFrom: 1 to: 16);
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   274
        at: #depth2  put: (colorMap copyFrom: 1 to: 4);
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   275
        at: #masked2 put: (colorMap copyFrom: 1 to: 4);
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   276
        at: #depth1  put: (colorMap copyFrom: 1 to: 2);
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   277
        at: #masked1 put: (colorMap copyFrom: 1 to: 2);
400
228524287573 intitial checkin
tz
parents:
diff changeset
   278
        yourself
228524287573 intitial checkin
tz
parents:
diff changeset
   279
!
228524287573 intitial checkin
tz
parents:
diff changeset
   280
228524287573 intitial checkin
tz
parents:
diff changeset
   281
listOfDefaultSizes
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
   282
    "returns the list of default sizes for a new image"
400
228524287573 intitial checkin
tz
parents:
diff changeset
   283
1960
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
   284
    ^ #('8x8' '16x16' '22x22' '32x32' '48x48' '64x64')
932
7111238cda23 fixed dimension of new-image dialog.
Claus Gittinger <cg@exept.de>
parents: 930
diff changeset
   285
7111238cda23 fixed dimension of new-image dialog.
Claus Gittinger <cg@exept.de>
parents: 930
diff changeset
   286
    "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
   287
!
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   288
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   289
namesOfColorMaps
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   290
    ^ Dictionary new
2571
8b182cc4cac7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2567
diff changeset
   291
        at: #depth32 put: '32-plane (rgba)';
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   292
        at: #depth24 put: '24-plane';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   293
        at: #masked24 put: '24-plane + mask';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   294
        at: #depth16 put: '16-plane';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   295
        at: #masked16 put: '16-plane + mask';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   296
        at: #depth8  put: ' 8-plane';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   297
        at: #masked8 put: ' 8-plane + mask';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   298
        at: #depth4  put: ' 4-plane';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   299
        at: #masked4 put: ' 4-plane + mask';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   300
        at: #depth2  put: ' 2-plane';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   301
        at: #masked2 put: ' 2-plane + mask';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   302
        at: #depth1  put: ' 1-plane';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   303
        at: #masked1 put: ' 1-plane + mask' ;
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   304
        yourself
400
228524287573 intitial checkin
tz
parents:
diff changeset
   305
! !
228524287573 intitial checkin
tz
parents:
diff changeset
   306
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   307
!ImageEditor class methodsFor:'help specs'!
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   308
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   309
helpPairs
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   310
    "This resource specification was automatically generated
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   311
     by the UIHelpTool of ST/X."
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   312
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   313
    "Do not manually edit this!! If it is corrupted,
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   314
     the UIHelpTool may not be able to read the specification."
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   315
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   316
    "
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   317
     UIHelpTool openOnClass:ImageEditor
2871
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
    <resource: #help>
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   321
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   322
    ^ #(
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   323
3421
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
   324
#drawingColor1
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
   325
'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
   326
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
   327
#drawingColor2
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
   328
'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
   329
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
   330
#drawingAlpha
3488
e9655ba452c7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3487
diff changeset
   331
'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
   332
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   333
#autoCropAll
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   334
'Find and remove all borders'
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
#autoCropBottom
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   337
'Find and remove bottom 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
#autoCropLeft
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   340
'Find and remove left 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
#autoCropRight
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   343
'Find and remove right border'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   344
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   345
#autoCropTop
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   346
'Find and remove top border'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   347
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   348
#colorMap
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   349
'ColorMap functions'
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   350
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   351
#colorMap1
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   352
'Convert to depth-1 image'
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   353
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   354
#colorMap1M
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   355
'Convert to depth-1 image plus mask'
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   356
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   357
#colorMap2
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   358
'Convert to depth-2 image'
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   359
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   360
#colorMap24
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   361
'Convert to depth-24 image (rgb)'
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   362
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   363
#colorMap2M
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   364
'Convert to depth-2 image plus mask'
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   365
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   366
#colorMap32
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   367
'Convert to depth-32 image (rgba)'
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   368
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   369
#colorMap4
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   370
'Convert to depth-4 image'
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   371
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   372
#colorMap4M
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   373
'Convert to depth-4 image plus mask'
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   374
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   375
#colorMap8
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   376
'Convert to depth-8 image'
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   377
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   378
#colorMap8M
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   379
'Convert to depth-8 image plus mask'
2571
8b182cc4cac7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2567
diff changeset
   380
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   381
#colorMapTable
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   382
'Shows a list of used colors of the image'
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   383
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   384
#compressColormap
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   385
'Remove unneeded entries from the colorMap'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   386
1045
c387bcacdf37 renamed - crob -> crop
Claus Gittinger <cg@exept.de>
parents: 1033
diff changeset
   387
#cropAll
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   388
'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
   389
1045
c387bcacdf37 renamed - crob -> crop
Claus Gittinger <cg@exept.de>
parents: 1033
diff changeset
   390
#cropBottom
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   391
'Cut off the specified number of pixels at the bottom'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   392
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   393
#cropBySelectingArea
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   394
'Select new area in the right detail view.'
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
#cropLeft
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   397
'Cut off the specified number of pixels at the left'
986
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
#cropManual
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   400
'Specify border(s) to remove.'
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
#cropRight
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   403
'Cut off the specified number of pixels at the right'
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   404
1045
c387bcacdf37 renamed - crob -> crop
Claus Gittinger <cg@exept.de>
parents: 1033
diff changeset
   405
#cropTop
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   406
'Cut off the specified number of pixels at the top'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   407
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   408
#cropubImage
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   409
'Select a subarea as the image''s new dimension'
487
6c336c183330 info bar as subSpec to class ToolApplicationModel moved
tz
parents: 475
diff changeset
   410
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   411
#drawModeBox
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   412
'Rectangle Drawing Mode'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   413
2375
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
   414
#drawModeCircle
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   415
'Circle Drawing Mode'
2375
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
   416
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   417
#drawModeCopy
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   418
'Area Copy Mode'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   419
3423
1b9fb486b83c #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3422
diff changeset
   420
#drawModeCropSubImage
1b9fb486b83c #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3422
diff changeset
   421
'Select and extract a subimage'
1b9fb486b83c #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3422
diff changeset
   422
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   423
#drawModeFill
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   424
'Flood Fill Mode'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   425
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   426
#drawModeFilledBox
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   427
'Filled Rectangle Drawing Mode'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   428
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   429
#drawModeFilledCircle
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   430
'Filled Circle Drawing Mode'
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
#drawModeMaskOutsideCircle
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   433
'Mask everything outside a Circle'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   434
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   435
#drawModeMaskOutsideRectangle
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   436
'Mask everything outside a Rectangle'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   437
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   438
#drawModePaste
3512
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
   439
'Paste-Over Mode (only paste pixels; keep mask as is)'
914
b4f32d092c8b added paste-under;
Claus Gittinger <cg@exept.de>
parents: 911
diff changeset
   440
b4f32d092c8b added paste-under;
Claus Gittinger <cg@exept.de>
parents: 911
diff changeset
   441
#drawModePasteUnder
3512
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
   442
'Paste-Under Mode (only paste previously masked pixels)'
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   443
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   444
#drawModePasteWithMask
3512
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
   445
'Paste-with-Mask Mode (both pixel and mask are pasted)'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   446
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   447
#drawModePoint
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   448
'Point Drawing Mode'
2375
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
   449
1639
8f2059cc287c checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1637
diff changeset
   450
#drawModeSpecial
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   451
'Special operations (select rectangle, then choose operation)'
1639
8f2059cc287c checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1637
diff changeset
   452
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   453
#drawModeSpray
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   454
'Spray Drawing Mode'
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   455
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   456
#edit3DProjection
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   457
'Generate a 3D projection'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   458
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   459
#editFlipHorizontal
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   460
'Flip the image horizontally'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   461
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   462
#editFlipVertical
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   463
'Flip the image vertically'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   464
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   465
#editMagnifyImage
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   466
'Magnify the image'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   467
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   468
#editNegate
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   469
'Invert the images colors'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   470
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   471
#editResize
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   472
'Resize the image (preserving the old image)'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   473
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   474
#editRotate
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   475
'Rotate the image'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   476
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   477
#fileEditMask
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   478
'Load Mask from a File'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   479
2701
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
   480
#fileGrabImageFromScreen
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   481
'Pick an image from the screen (specify area)'
2701
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
   482
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
   483
#fileGrabImageFromWindow
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   484
'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
   485
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   486
#fileLoadFromClass
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   487
'Select and load an image from a resource method'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   488
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   489
#fileLoadFromFile
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   490
'Select and load an image from a file'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   491
2796
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
   492
#fileLoadFromURL
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
   493
'Load an image from the net, given its URL'
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
   494
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   495
#fileNewImage
914
b4f32d092c8b added paste-under;
Claus Gittinger <cg@exept.de>
parents: 911
diff changeset
   496
'Create a new image'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   497
3200
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
   498
#fileNewImageFromClipboard
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
   499
'Create a new image and initialize it from the clipboard'
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
   500
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
   501
#fileNewMaskFromClipboard
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
   502
'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
   503
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   504
#filePrint
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   505
'Print the image on a postscript printer'
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   506
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   507
#filePrint
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   508
'Print'
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   509
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   510
#fileSave
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   511
'Save the image'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   512
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   513
#fileSaveAs
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   514
'Save the image to a file'
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   515
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   516
#fileSaveButtonImageAs
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   517
'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
   518
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   519
#fileSaveMaskAs
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   520
'Save the mask of the image to a file'
1613
1d4f11252d3b saveAsButtonImage added
ca
parents: 1611
diff changeset
   521
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   522
#fileSaveMethod
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   523
'Save the image as resource method in the current class and selector'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   524
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   525
#fileSaveMethodAs
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   526
'Save the image as resource method in a class'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   527
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   528
#floodFillMaxError
3433
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
   529
'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
   530
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   531
#magnificationNumber
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   532
'Shows the current 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
#magnifyImageDown
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   535
'Decrease 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
#magnifyImageUp
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   538
'Increase magnification'
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
#mouseKeyColorMode
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   541
'Toggle between left and right mouse button color'
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
#nextImageInSequence
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   544
'Go to the next image in the animated gif image sequence.'
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
#previewView
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   547
'Shows a preview of the image'
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
#previousImageInSequence
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   550
'Go to the previous image in the animated gif image sequence.'
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
#settingsGridMagnification
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   553
'Change the grid magnification of the edit view'
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
#xdrawModeBox
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   556
'Rectangle'
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
#xdrawModeCopy
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   559
'Copy'
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
#xdrawModeFill
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   562
'Flood-fill'
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
#xdrawModeFilledBox
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   565
'Filled rectangle'
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
#xdrawModePaste
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   568
'Paste'
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
#xdrawModePasteUnder
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   571
'Paste under'
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
#xdrawModePasteWithMask
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   574
'Paste with Mask'
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
#xdrawModePoint
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   577
'Point'
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
#xfileGrabImage
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   580
'Pick from screen'
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
#xfileLoadFromClass
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   583
'Load from method...'
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
#xfileLoadFromFile
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   586
'Load from file...'
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
#xfileNewImage
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   589
'New image'
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
#xfileSaveAs
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   592
'Save 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
#xfileSaveMaskAs
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   595
'Save mask to file...'
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
#xfileSaveMethod
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   598
'Save as method'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   599
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   600
#xfileSaveMethodAs
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   601
'Save as Method...'
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   602
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   603
)
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   604
3512
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
   605
    "Modified: / 07-12-2017 / 15:32:58 / cg"
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   606
!
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
helpSpec
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   609
    <resource: #programHelp>
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   610
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   611
    ^super helpSpec addPairsFrom:(self helpPairs)
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   612
3513
79c3eab8cb2f #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3512
diff changeset
   613
    "Modified: / 16-02-2017 / 12:30:55 / cg"
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   614
! !
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   615
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
   616
!ImageEditor class methodsFor:'image specs'!
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
   617
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   618
brighterIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   619
    "This resource specification was automatically generated
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   620
     by the ImageEditor of ST/X."
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
    "Do not manually edit this!! If it is corrupted,
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   623
     the ImageEditor may not be able to read the specification."
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   624
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   625
    "
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   626
     self brighterIcon inspect
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   627
     ImageEditor openOnClass:self andSelector:#brighterIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   628
     Icon flushCachedIcons
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
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   631
    <resource: #image>
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   632
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   633
    ^Icon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   634
        constantNamed:'ImageEditor class brighterIcon'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   635
        ifAbsentPut:[(Depth8Image width:14 height:14) bits:(ByteArray fromPackedString:'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   636
@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
   637
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
   638
;><A@PDA@PDA@PDA@PDA@P@a')
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   639
            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
   640
            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
   641
!
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   642
2272
d1923697d456 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2260
diff changeset
   643
circleIcon
d1923697d456 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2260
diff changeset
   644
    "This resource specification was automatically generated
d1923697d456 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2260
diff changeset
   645
     by the ImageEditor of ST/X."
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
    "Do not manually edit this!! If it is corrupted,
d1923697d456 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2260
diff changeset
   648
     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
   649
2272
d1923697d456 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2260
diff changeset
   650
    "
d1923697d456 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2260
diff changeset
   651
     self circleIcon inspect
d1923697d456 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2260
diff changeset
   652
     ImageEditor openOnClass:self andSelector:#circleIcon
3442
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   653
     Icon flushCachedIcons
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
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   656
    <resource: #image>
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   657
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   658
    ^Icon
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   659
        constantNamed:'ImageEditor class circleIcon'
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   660
        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
   661
            colorMapFromArray:#[0 0 0 127 127 127]
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   662
            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
   663
!
d1923697d456 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2260
diff changeset
   664
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   665
copyIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   666
    <resource: #image>
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   667
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   668
     by the ImageEditor of ST/X."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   669
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   670
     the ImageEditor may not be able to read the specification."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   671
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   672
     self copyIcon inspect
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   673
     ImageEditor openOnClass:self andSelector:#copyIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   674
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   675
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   676
    ^ Icon constantNamed:'ImageEditor class copyIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   677
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   678
            (Depth2Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   679
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   680
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   681
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   682
                bitsPerSample:(#( 2 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   683
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   684
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   685
                            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
   686
                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
   687
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   688
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   689
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   690
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   691
                                        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
   692
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   693
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   694
        ]
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   695
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   696
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   697
cropSubImageIcon
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   698
    "This resource specification was automatically generated
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   699
     by the ImageEditor of ST/X."
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
    "Do not manually edit this!! If it is corrupted,
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   702
     the ImageEditor may not be able to read the specification."
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   703
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   704
    "
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   705
     self cropSubImageIcon inspect
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   706
     ImageEditor openOnClass:self andSelector:#cropSubImageIcon
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   707
     Icon flushCachedIcons
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
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   710
    <resource: #image>
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   711
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   712
    ^Icon
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   713
        constantNamed:'ImageEditor class cropSubImageIcon'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   714
        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
   715
            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
   716
            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
   717
!
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   718
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   719
darkerIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   720
    "This resource specification was automatically generated
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   721
     by the ImageEditor of ST/X."
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
    "Do not manually edit this!! If it is corrupted,
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   724
     the ImageEditor may not be able to read the specification."
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   725
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   726
    "
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   727
     self darkerIcon inspect
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   728
     ImageEditor openOnClass:self andSelector:#darkerIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   729
     Icon flushCachedIcons
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
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   732
    <resource: #image>
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   733
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   734
    ^Icon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   735
        constantNamed:'ImageEditor class darkerIcon'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   736
        ifAbsentPut:[(Depth8Image width:14 height:14) bits:(ByteArray fromPackedString:'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   737
@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
   738
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
   739
9^TA@PDA@PDA@PDA@PDA@P@a')
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   740
            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
   741
            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
   742
!
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   743
2155
bfc839d08928 Add #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 2136
diff changeset
   744
defaultIcon
bfc839d08928 Add #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 2136
diff changeset
   745
    <resource: #programImage>
bfc839d08928 Add #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 2136
diff changeset
   746
bfc839d08928 Add #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 2136
diff changeset
   747
    ^ ToolbarIconLibrary startImageEditorIcon
bfc839d08928 Add #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 2136
diff changeset
   748
!
bfc839d08928 Add #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 2136
diff changeset
   749
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   750
editIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   751
    "This resource specification was automatically generated
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   752
     by the ImageEditor of ST/X."
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
    "Do not manually edit this!! If it is corrupted,
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   755
     the ImageEditor may not be able to read the specification."
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   756
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   757
    "
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   758
     self editIcon inspect
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   759
     ImageEditor openOnClass:self andSelector:#editIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   760
     Icon flushCachedIcons
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
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   763
    <resource: #image>
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   764
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   765
    ^Icon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   766
        constantNamed:'ImageEditor class editIcon'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   767
        ifAbsentPut:[(Depth8Image width:15 height:16) bits:(ByteArray fromPackedString:'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   768
@@@@@@@3V41AJ0T@@@@@@@@@@B1(TD4>EP@@@@@@@@@@@CA!!S4X2D@@@@@@@@@@@LV)XTTHX@@@@@@@@@@@@K6UTS$LR@@@@@@@@@@@9OE9VRQ8@@@@@@@@@
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   769
@@@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
   770
@@ IDP@@@@@@@@@@@@@@@@\K@@@@@@@@@@@@@@@@@A,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@')
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   771
            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
   772
            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
   773
!
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   774
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   775
emptyIcon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   776
    "This resource specification was automatically generated
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   777
     by the ImageEditor of ST/X."
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
    "Do not manually edit this!! If it is corrupted,
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   780
     the ImageEditor may not be able to read the specification."
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   781
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   782
    "
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   783
     self emptyIcon inspect
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   784
     ImageEditor openOnClass:self andSelector:#emptyIcon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   785
     Icon flushCachedIcons
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
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   788
    <resource: #image>
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   789
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   790
    ^Icon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   791
        constantNamed:'ImageEditor class emptyIcon'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   792
        ifAbsentPut:[(Depth4Image width:14 height:14) bits:(ByteArray fromPackedString:'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   793
@@@@@@@@@@@b')
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   794
            colorMapFromArray:#[0 0 0]
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   795
            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
   796
!
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   797
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   798
emptyIcon2
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   799
    "This resource specification was automatically generated
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   800
     by the ImageEditor of ST/X."
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
    "Do not manually edit this!! If it is corrupted,
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   803
     the ImageEditor may not be able to read the specification."
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   804
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   805
    "
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   806
     self emptyIcon2 inspect
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   807
     ImageEditor openOnClass:self andSelector:#emptyIcon2
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   808
     Icon flushCachedIcons
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
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   811
    <resource: #image>
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   812
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   813
    ^Icon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   814
        constantNamed:'ImageEditor class emptyIcon2'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   815
        ifAbsentPut:[(Depth4Image width:28 height:14) bits:(ByteArray fromPackedString:'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   816
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   817
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   818
@@@@@@@@@@@@@@@@@@@@@@@a')
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   819
            colorMapFromArray:#[0 0 0]
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   820
            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
   821
!
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   822
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   823
fillCircleIcon
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   824
    "This resource specification was automatically generated
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   825
     by the ImageEditor of ST/X."
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
    "Do not manually edit this!! If it is corrupted,
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   828
     the ImageEditor may not be able to read the specification."
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   829
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   830
    "
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   831
     self fillCircleIcon inspect
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   832
     ImageEditor openOnClass:self andSelector:#fillCircleIcon
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   833
     Icon flushCachedIcons
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
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   836
    <resource: #image>
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   837
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   838
    ^Icon
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   839
        constantNamed:'ImageEditor class fillCircleIcon'
3443
b9d9eb4b34f9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3442
diff changeset
   840
        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
   841
            colorMapFromArray:#[0 0 0 127 127 127]
b9d9eb4b34f9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3442
diff changeset
   842
            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
   843
!
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   844
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   845
fillDiagonalGradientRectIcon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   846
    "This resource specification was automatically generated
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   847
     by the ImageEditor of ST/X."
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
    "Do not manually edit this!! If it is corrupted,
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   850
     the ImageEditor may not be able to read the specification."
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   851
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   852
    "
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   853
     self fillDiagonalGradientRectIcon inspect
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   854
     ImageEditor openOnClass:self andSelector:#fillDiagonalGradientRectIcon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   855
     Icon flushCachedIcons
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
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   858
    <resource: #image>
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   859
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   860
    ^Icon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   861
        constantNamed:'ImageEditor class fillDiagonalGradientRectIcon'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   862
        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
   863
@@@@@@@@@@@b')
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   864
            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
   865
            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
   866
!
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   867
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   868
fillGradientRectIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   869
    <resource: #image>
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   870
    "This resource specification was automatically generated
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   871
     by the ImageEditor of ST/X."
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   872
    "Do not manually edit this!! If it is corrupted,
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   873
     the ImageEditor may not be able to read the specification."
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   874
    "
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   875
     self fillGradientRectIcon inspect
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   876
     ImageEditor openOnClass:self andSelector:#fillGradientRectIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   877
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   878
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   879
    ^ Icon constantNamed:'ImageEditor class fillGradientRectIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   880
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   881
            (Depth4Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   882
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   883
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   884
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   885
                bitsPerSample:(#[ 4 ]);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   886
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   887
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   888
                            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
   889
@@@@@@@@@@@b');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   890
                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
   891
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   892
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   893
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   894
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   895
                                        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
   896
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   897
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   898
        ]
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   899
!
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   900
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   901
fillHorizontalGradientRectIcon
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   902
    "This resource specification was automatically generated
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   903
     by the ImageEditor of ST/X."
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
    "Do not manually edit this!! If it is corrupted,
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   906
     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
   907
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   908
    "
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   909
     self fillHorizontalGradientRectIcon inspect
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   910
     ImageEditor openOnClass:self andSelector:#fillHorizontalGradientRectIcon
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   911
     Icon flushCachedIcons
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
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   914
    <resource: #image>
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   915
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   916
    ^Icon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   917
        constantNamed:'ImageEditor class fillHorizontalGradientRectIcon'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   918
        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
   919
@@@@@@@@@@@b')
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   920
            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
   921
            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
   922
!
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   923
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   924
fillIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   925
    <resource: #image>
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   926
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   927
     by the ImageEditor of ST/X."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   928
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   929
     the ImageEditor may not be able to read the specification."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   930
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   931
     self fillIcon inspect
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   932
     ImageEditor openOnClass:self andSelector:#fillIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   933
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   934
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   935
    ^ Icon constantNamed:'ImageEditor class fillIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   936
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   937
            (Depth2Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   938
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   939
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   940
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   941
                bitsPerSample:(#( 2 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   942
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   943
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   944
                            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
   945
                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
   946
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   947
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   948
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   949
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   950
                                        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
   951
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   952
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   953
        ]
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   954
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   955
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   956
fillRectIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   957
    <resource: #image>
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   958
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   959
     by the ImageEditor of ST/X."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   960
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   961
     the ImageEditor may not be able to read the specification."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   962
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   963
     self fillRectIcon inspect
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   964
     ImageEditor openOnClass:self andSelector:#fillRectIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   965
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   966
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   967
    ^ Icon constantNamed:'ImageEditor class fillRectIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   968
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   969
            (Depth1Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   970
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   971
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   972
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   973
                bitsPerSample:(#( 1 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   974
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   975
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   976
                            fromPackedString:'@@@@@@@A@@@@@@@@@@@@@@@@@@@@@@@@@@D@@@@a');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   977
                colorMapFromArray:#[ 0 0 0 255 0 0 ];
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   978
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   979
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   980
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   981
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   982
                                        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
   983
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   984
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   985
        ]
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   986
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   987
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   988
fillVerticalGradientRectIcon
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   989
    "This resource specification was automatically generated
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   990
     by the ImageEditor of ST/X."
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
    "Do not manually edit this!! If it is corrupted,
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   993
     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
   994
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   995
    "
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   996
     self fillVerticalGradientRectIcon inspect
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   997
     ImageEditor openOnClass:self andSelector:#fillVerticalGradientRectIcon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   998
     Icon flushCachedIcons
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
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  1001
    <resource: #image>
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  1002
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  1003
    ^Icon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  1004
        constantNamed:'ImageEditor class fillVerticalGradientRectIcon'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  1005
        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
  1006
@@@@@@@@@@@b')
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  1007
            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
  1008
            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
  1009
!
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
  1010
2837
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1011
flipHorizontalIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1012
    <resource: #image>
2837
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1013
    "This resource specification was automatically generated
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1014
     by the ImageEditor of ST/X."
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1015
    "Do not manually edit this!! If it is corrupted,
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1016
     the ImageEditor may not be able to read the specification."
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1017
    "
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1018
     self flipHorizontalIcon inspect
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1019
     ImageEditor openOnClass:self andSelector:#flipHorizontalIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1020
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1021
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1022
    ^ Icon constantNamed:'ImageEditor class flipHorizontalIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1023
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1024
            (Depth1Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1025
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1026
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1027
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1028
                bitsPerSample:(#( 1 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1029
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1030
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1031
                            fromPackedString:'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1032
                colorMapFromArray:#[ 0 0 0 ];
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1033
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1034
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1035
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1036
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1037
                                        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
  1038
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1039
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1040
        ]
2837
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1041
!
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1042
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1043
flipVerticalIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1044
    <resource: #image>
2837
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1045
    "This resource specification was automatically generated
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1046
     by the ImageEditor of ST/X."
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1047
    "Do not manually edit this!! If it is corrupted,
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1048
     the ImageEditor may not be able to read the specification."
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1049
    "
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1050
     self flipVerticalIcon inspect
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1051
     ImageEditor openOnClass:self andSelector:#flipVerticalIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1052
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1053
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1054
    ^ Icon constantNamed:'ImageEditor class flipVerticalIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1055
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1056
            (Depth1Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1057
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1058
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1059
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1060
                bitsPerSample:(#( 1 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1061
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1062
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1063
                            fromPackedString:'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1064
                colorMapFromArray:#[ 0 0 0 ];
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1065
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1066
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1067
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1068
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1069
                                        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
  1070
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1071
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1072
        ]
2837
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1073
!
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1074
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1075
leftMouseKeyIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1076
    <resource: #image>
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1077
    "This resource specification was automatically generated
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1078
     by the ImageEditor of ST/X."
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1079
    "Do not manually edit this!! If it is corrupted,
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1080
     the ImageEditor may not be able to read the specification."
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1081
    "
1405
0b2e421db465 images compactified
Claus Gittinger <cg@exept.de>
parents: 1403
diff changeset
  1082
     self leftMouseKeyIcon inspect
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1083
     ImageEditor openOnClass:self andSelector:#leftMouseKeyIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1084
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1085
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1086
    ^ Icon constantNamed:'ImageEditor class leftMouseKeyIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1087
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1088
            (Depth2Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1089
                width:16;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1090
                height:16;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1091
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1092
                bitsPerSample:(#( 2 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1093
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1094
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1095
                            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
  1096
                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
  1097
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1098
                            width:16;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1099
                            height:16;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1100
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1101
                                        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
  1102
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1103
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1104
        ]
1433
df38b2a5d335 checkin from browser
martin
parents: 1424
diff changeset
  1105
!
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1106
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1107
maskOutsideCircleIcon
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1108
    "This resource specification was automatically generated
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1109
     by the ImageEditor of ST/X."
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
    "Do not manually edit this!! If it is corrupted,
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1112
     the ImageEditor may not be able to read the specification."
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1113
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1114
    "
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1115
     self maskOutsideCircleIcon inspect
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1116
     ImageEditor openOnClass:self andSelector:#maskOutsideCircleIcon
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1117
     Icon flushCachedIcons
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
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1120
    <resource: #image>
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1121
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1122
    ^Icon
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1123
        constantNamed:'ImageEditor class maskOutsideCircleIcon'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1124
        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
  1125
            colorMapFromArray:#[0 0 0 255 127 127]
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1126
            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
  1127
!
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1128
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1129
maskOutsideRectangleIcon
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1130
    "This resource specification was automatically generated
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1131
     by the ImageEditor of ST/X."
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
    "Do not manually edit this!! If it is corrupted,
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1134
     the ImageEditor may not be able to read the specification."
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1135
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1136
    "
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1137
     self maskOutsideRectangleIcon inspect
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1138
     ImageEditor openOnClass:self andSelector:#maskOutsideRectangleIcon
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1139
     Icon flushCachedIcons
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
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1142
    <resource: #image>
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1143
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1144
    ^Icon
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1145
        constantNamed:'ImageEditor class maskOutsideRectangleIcon'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1146
        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
  1147
            colorMapFromArray:#[0 0 0 255 127 127]
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1148
            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
  1149
!
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1150
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1151
pasteIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1152
    <resource: #image>
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1153
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1154
     by the ImageEditor of ST/X."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1155
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1156
     the ImageEditor may not be able to read the specification."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1157
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1158
     self pasteIcon inspect
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1159
     ImageEditor openOnClass:self andSelector:#pasteIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1160
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1161
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1162
    ^ Icon constantNamed:'ImageEditor class pasteIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1163
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1164
            (Depth4Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1165
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1166
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1167
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1168
                bitsPerSample:(#( 4 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1169
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1170
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1171
                            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
  1172
@@@@@@@@@@@b');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1173
                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
  1174
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1175
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1176
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1177
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1178
                                        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
  1179
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1180
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1181
        ]
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1182
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1183
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1184
pasteUnderIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1185
    <resource: #image>
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1186
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1187
     by the ImageEditor of ST/X."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1188
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1189
     the ImageEditor may not be able to read the specification."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1190
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1191
     self pasteUnderIcon inspect
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1192
     ImageEditor openOnClass:self andSelector:#pasteUnderIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1193
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1194
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1195
    ^ Icon constantNamed:'ImageEditor class pasteUnderIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1196
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1197
            (Depth4Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1198
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1199
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1200
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1201
                bitsPerSample:(#( 4 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1202
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1203
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1204
                            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
  1205
@@@@@@@@@@@b');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1206
                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
  1207
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1208
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1209
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1210
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1211
                                        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
  1212
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1213
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1214
        ]
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1215
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1216
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1217
pasteWithMaskIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1218
    <resource: #image>
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1219
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1220
     by the ImageEditor of ST/X."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1221
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1222
     the ImageEditor may not be able to read the specification."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1223
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1224
     self pasteWithMaskIcon inspect
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1225
     ImageEditor openOnClass:self andSelector:#pasteWithMaskIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1226
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1227
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1228
    ^ Icon constantNamed:'ImageEditor class pasteWithMaskIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1229
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1230
            (Depth4Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1231
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1232
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1233
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1234
                bitsPerSample:(#( 4 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1235
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1236
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1237
                            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
  1238
@@@@@@@@@@@b');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1239
                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
  1240
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1241
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1242
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1243
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1244
                                        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
  1245
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1246
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1247
        ]
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1248
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1249
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1250
pointIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1251
    <resource: #image>
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1252
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1253
     by the ImageEditor of ST/X."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1254
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1255
     the ImageEditor may not be able to read the specification."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1256
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1257
     self pointIcon inspect
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1258
     ImageEditor openOnClass:self andSelector:#pointIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1259
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1260
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1261
    ^ Icon constantNamed:'ImageEditor class pointIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1262
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1263
            (Depth1Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1264
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1265
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1266
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1267
                bitsPerSample:(#( 1 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1268
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1269
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1270
                            fromPackedString:'@@@@@@@A@@@@@@@@@@@@@@@C@@@@@@@@@@@@@@@a');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1271
                colorMapFromArray:#[ 0 0 0 255 255 255 ];
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1272
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1273
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1274
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1275
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1276
                                        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
  1277
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1278
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1279
        ]
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1280
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1281
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1282
rectIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1283
    <resource: #image>
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1284
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1285
     by the ImageEditor of ST/X."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1286
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1287
     the ImageEditor may not be able to read the specification."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1288
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1289
     self rectIcon inspect
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1290
     ImageEditor openOnClass:self andSelector:#rectIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1291
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1292
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1293
    ^ Icon constantNamed:'ImageEditor class rectIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1294
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1295
            (Depth1Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1296
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1297
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1298
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1299
                bitsPerSample:(#( 1 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1300
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1301
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1302
                            fromPackedString:'@@@@@@@A@@@@@@@@@@@@@@@C@@@@@@@@@@@@@@@a');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1303
                colorMapFromArray:#[ 0 0 0 255 0 0 ];
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1304
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1305
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1306
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1307
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1308
                                        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
  1309
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1310
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1311
        ]
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1312
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1313
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1314
rightMouseKeyIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1315
    <resource: #image>
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1316
    "This resource specification was automatically generated
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1317
     by the ImageEditor of ST/X."
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1318
    "Do not manually edit this!! If it is corrupted,
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1319
     the ImageEditor may not be able to read the specification."
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1320
    "
1405
0b2e421db465 images compactified
Claus Gittinger <cg@exept.de>
parents: 1403
diff changeset
  1321
     self rightMouseKeyIcon inspect
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1322
     ImageEditor openOnClass:self andSelector:#rightMouseKeyIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1323
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1324
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1325
    ^ Icon constantNamed:'ImageEditor class rightMouseKeyIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1326
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1327
            (Depth2Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1328
                width:16;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1329
                height:16;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1330
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1331
                bitsPerSample:(#( 2 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1332
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1333
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1334
                            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
  1335
                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
  1336
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1337
                            width:16;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1338
                            height:16;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1339
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1340
                                        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
  1341
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1342
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1343
        ]
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1344
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1345
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1346
slightlyBrighterIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1347
    "This resource specification was automatically generated
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1348
     by the ImageEditor of ST/X."
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
    "Do not manually edit this!! If it is corrupted,
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1351
     the ImageEditor may not be able to read the specification."
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1352
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1353
    "
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1354
     self slightlyBrighterIcon inspect
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1355
     ImageEditor openOnClass:self andSelector:#slightlyBrighterIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1356
     Icon flushCachedIcons
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
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1359
    <resource: #image>
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1360
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1361
    ^Icon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1362
        constantNamed:'ImageEditor class slightlyBrighterIcon'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1363
        ifAbsentPut:[(Depth8Image width:14 height:14) bits:(ByteArray fromPackedString:'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1364
@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
  1365
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
  1366
;><A@PDA@PDA@PDA@PDA@P@a')
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1367
            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
  1368
            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
  1369
!
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1370
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1371
slightlyDarkerIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1372
    "This resource specification was automatically generated
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1373
     by the ImageEditor of ST/X."
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
    "Do not manually edit this!! If it is corrupted,
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1376
     the ImageEditor may not be able to read the specification."
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1377
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1378
    "
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1379
     self slightlyDarkerIcon inspect
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1380
     ImageEditor openOnClass:self andSelector:#slightlyDarkerIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1381
     Icon flushCachedIcons
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
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1384
    <resource: #image>
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1385
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1386
    ^Icon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1387
        constantNamed:'ImageEditor class slightlyDarkerIcon'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1388
        ifAbsentPut:[(Depth8Image width:14 height:14) bits:(ByteArray fromPackedString:'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1389
@PDA@PDA@PDA@PDA@PG/;>?/;>?/@@@@@@@@@N?/;>?/;><@@@@@@@@@;>?/;>?/;0@@@@@@@@C/;>?/;>?/@@@@@@@@@N?/;>?/;><@@@@@@@@@;>?/A XF
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1390
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
  1391
@@@A@PDA@PDA@PDA@PDA@P@a')
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1392
            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
  1393
            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
  1394
!
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1395
3191
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1396
smoothIcon
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1397
    "This resource specification was automatically generated
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1398
     by the ImageEditor of ST/X."
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
    "Do not manually edit this!! If it is corrupted,
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1401
     the ImageEditor may not be able to read the specification."
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1402
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1403
    "
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1404
     self smoothIcon inspect
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1405
     ImageEditor openOnClass:self andSelector:#smoothIcon
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1406
     Icon flushCachedIcons
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
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1409
    <resource: #image>
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1410
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1411
    ^Icon
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1412
        constantNamed:'ImageEditor smoothIcon'
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1413
        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
  1414
@@@@@@@@@@@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
  1415
!
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1416
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  1417
specialCircleIcon
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  1418
    "This resource specification was automatically generated
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  1419
     by the ImageEditor of ST/X."
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
    "Do not manually edit this!! If it is corrupted,
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  1422
     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
  1423
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  1424
    "
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  1425
     self specialCircleIcon inspect
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  1426
     ImageEditor openOnClass:self andSelector:#specialCircleIcon
3442
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1427
     Icon flushCachedIcons
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
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1430
    <resource: #image>
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1431
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1432
    ^Icon
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1433
        constantNamed:'ImageEditor class specialCircleIcon'
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1434
        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
  1435
            colorMapFromArray:#[0 0 0 255 0 0 127 127 127]
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1436
            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
  1437
!
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  1438
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1439
specialRectangleIcon
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1440
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1441
     by the ImageEditor of ST/X."
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
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1444
     the ImageEditor may not be able to read the specification."
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1445
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1446
    "
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1447
     self specialRectangleIcon inspect
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1448
     ImageEditor openOnClass:self andSelector:#specialRectangleIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1449
     Icon flushCachedIcons
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
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1452
    <resource: #image>
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1453
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1454
    ^Icon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1455
        constantNamed:'ImageEditor class specialRectangleIcon'
3442
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1456
        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
  1457
            colorMapFromArray:#[0 0 0 255 0 0 127 127 127]
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1458
            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
  1459
!
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  1460
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  1461
sprayIcon
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  1462
    "This resource specification was automatically generated
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  1463
     by the ImageEditor of ST/X."
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
    "Do not manually edit this!! If it is corrupted,
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  1466
     the ImageEditor may not be able to read the specification."
3191
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1467
2375
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  1468
    "
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  1469
     self sprayIcon inspect
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  1470
     ImageEditor openOnClass:self andSelector:#sprayIcon
3191
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1471
     Icon flushCachedIcons
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
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1474
    <resource: #image>
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1475
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1476
    ^Icon
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1477
        constantNamed:'ImageEditor sprayIcon'
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1478
        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
  1479
@@@@@@@@@@@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
  1480
! !
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1481
400
228524287573 intitial checkin
tz
parents:
diff changeset
  1482
!ImageEditor class methodsFor:'interface specs'!
228524287573 intitial checkin
tz
parents:
diff changeset
  1483
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1484
changeHLSDialogSpec
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1485
    "This resource specification was automatically generated
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1486
     by the UIPainter of ST/X."
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1487
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1488
    "Do not manually edit this!! If it is corrupted,
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1489
     the UIPainter may not be able to read the specification."
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1490
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1491
    "
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1492
     UIPainter new openOnClass:ImageEditor andSelector:#changeHLSDialogSpec
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1493
     ImageEditor new openInterface:#changeHLSDialogSpec
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1494
    "
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1495
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1496
    <resource: #canvas>
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1497
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1498
    ^ 
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1499
    #(FullSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1500
       name: changeHLSDialogSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1501
       window: 
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1502
      (WindowSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1503
         label: 'HLS Edit Dialog'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1504
         name: 'HLS Edit Dialog'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1505
         min: (Point 10 10)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1506
         bounds: (Rectangle 0 0 378 312)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1507
       )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1508
       component: 
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1509
      (SpecCollection
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1510
         collection: (
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1511
          (LabelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1512
             label: 'Hue-Shift:'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1513
             name: 'HueLabel'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1514
             layout: (LayoutFrame 20 0 21 0 187 0 43 0)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1515
             translateLabel: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1516
             adjust: right
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1517
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1518
          (InputFieldSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1519
             name: 'HueShiftEntryField'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1520
             layout: (LayoutFrame 194 0 21 0 237 0 43 0)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1521
             tabable: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1522
             model: hueShiftAmount
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1523
             type: numberInRange
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1524
             minValue: 0
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1525
             maxValue: 360
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1526
             acceptChannel: acceptChannel
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1527
             acceptOnPointerLeave: false
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1528
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1529
          (ThumbWheelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1530
             name: 'HueWheel'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1531
             layout: (LayoutFrame 246 0 22 0 363 0 42 0)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1532
             model: hueShiftAmount
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1533
             orientation: horizontal
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1534
             step: 1
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1535
             endlessRotation: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1536
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1537
          (LabelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1538
             label: 'Light Factor:'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1539
             name: 'LightLabel'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1540
             layout: (LayoutFrame 20 0 50 0 187 0 72 0)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1541
             translateLabel: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1542
             adjust: right
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1543
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1544
          (InputFieldSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1545
             name: 'LightEntryField'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1546
             layout: (LayoutFrame 194 0 50 0 237 0 72 0)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1547
             tabable: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1548
             model: lightAmount
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1549
             type: numberInRange
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1550
             minValue: 0
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1551
             maxValue: 1000
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1552
             acceptChannel: acceptChannel
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1553
             acceptOnPointerLeave: false
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1554
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1555
          (ThumbWheelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1556
             name: 'LightWheel'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1557
             layout: (LayoutFrame 246 0 51 0 363 0 71 0)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1558
             model: lightAmount
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1559
             orientation: horizontal
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1560
             stop: 1000
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1561
             step: 1
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1562
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1563
          (LabelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1564
             label: 'Saturation Factor:'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1565
             name: 'SaturationLabel'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1566
             layout: (LayoutFrame 20 0 79 0 187 0 101 0)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1567
             translateLabel: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1568
             adjust: right
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1569
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1570
          (InputFieldSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1571
             name: 'SaturationEntryField'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1572
             layout: (LayoutFrame 194 0 79 0 237 0 101 0)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1573
             tabable: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1574
             model: saturationAmount
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1575
             type: numberInRange
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1576
             minValue: 0
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1577
             maxValue: 1000
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1578
             acceptChannel: acceptChannel
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1579
             acceptOnPointerLeave: false
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1580
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1581
          (ThumbWheelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1582
             name: 'SaturationWheel'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1583
             layout: (LayoutFrame 246 0 80 0 363 0 100 0)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1584
             model: saturationAmount
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1585
             orientation: horizontal
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1586
             stop: 1000
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1587
             step: 1
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1588
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1589
          (LabelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1590
             label: 'Color Shift'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1591
             name: 'Label2'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1592
             layout: (LayoutFrame 5 0 127 0 -15 0.5 149 0)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1593
             translateLabel: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1594
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1595
          (LabelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1596
             name: 'HueColorLabel'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1597
             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
  1598
             level: -1
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1599
             backgroundChannel: hlsColor
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1600
             translateLabel: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1601
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1602
          (LabelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1603
             label: 'Preview'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1604
             name: 'Label3'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1605
             layout: (LayoutFrame 5 0.5 127 0 -5 1 149 0)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1606
             translateLabel: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1607
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1608
          (LabelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1609
             name: 'PreviewLabel'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1610
             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
  1611
             level: -1
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1612
             translateLabel: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1613
             labelChannel: previewImageHolder
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1614
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1615
          (HorizontalPanelViewSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1616
             name: 'HorizontalPanel1'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1617
             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
  1618
             horizontalLayout: fitSpace
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1619
             verticalLayout: center
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1620
             horizontalSpace: 3
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1621
             verticalSpace: 3
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1622
             reverseOrderIfOKAtLeft: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1623
             component: 
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1624
            (SpecCollection
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1625
               collection: (
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1626
                (ActionButtonSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1627
                   label: 'Cancel'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1628
                   name: 'Button1'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1629
                   translateLabel: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1630
                   tabable: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1631
                   model: cancel
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1632
                   extent: (Point 183 28)
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1633
                 )
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1634
                (ActionButtonSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1635
                   label: 'OK'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1636
                   name: 'Button2'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1637
                   translateLabel: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1638
                   tabable: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1639
                   model: accept
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1640
                   extent: (Point 183 28)
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
                )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1643
              
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
             keepSpaceForOSXResizeHandleH: true
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1646
           )
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1647
          )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1648
        
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1649
       )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1650
     )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1651
!
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1652
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1653
cropSpec
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1654
    "This resource specification was automatically generated
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1655
     by the UIPainter of ST/X."
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
    "Do not manually edit this!! If it is corrupted,
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1658
     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
  1659
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1660
    "
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1661
     UIPainter new openOnClass:ImageEditor andSelector:#cropSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1662
     ImageEditor new openInterface:#cropSpec
1740
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
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1665
    <resource: #canvas>
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1666
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1667
    ^ 
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1668
    #(FullSpec
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1669
       name: cropSpec
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1670
       window: 
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1671
      (WindowSpec
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1672
         label: 'Crop Border(s)'
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1673
         name: 'Crop Border(s)'
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1674
         min: (Point 10 10)
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1675
         bounds: (Rectangle 0 0 364 312)
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1676
       )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1677
       component: 
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1678
      (SpecCollection
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1679
         collection: (
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1680
          (LabelSpec
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1681
             label: 'Left:'
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1682
             name: 'CropLeftLabel'
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1683
             layout: (LayoutFrame 14 0 24 0 90 0 46 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1684
             activeHelpKey: cropLeft
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1685
             translateLabel: true
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  1686
             adjust: left
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1687
           )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1688
          (InputFieldSpec
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1689
             name: 'CropLeftEntryField'
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  1690
             layout: (LayoutFrame 95 0 24 0 125 0 46 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1691
             activeHelpKey: cropLeft
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1692
             tabable: true
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1693
             model: cropLeftAmount
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1694
             type: number
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1695
             acceptChannel: acceptChannel
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1696
             acceptOnPointerLeave: false
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1697
           )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1698
          (ActionButtonSpec
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1699
             label: 'Crop Now'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1700
             name: 'CropLeftNowButton'
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1701
             layout: (LayoutFrame 133 0 21 0 229 0 50 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1702
             activeHelpKey: cropLeft
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1703
             translateLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1704
             resizeForLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1705
             tabable: true
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1706
             model: cropLeftNow
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1707
             autoRepeat: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1708
             usePreferredWidth: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1709
           )
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1710
          (ActionButtonSpec
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1711
             label: 'Auto'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1712
             name: 'Button6'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1713
             layout: (LayoutFrame 236 0 21 0 289 0 50 0)
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1714
             activeHelpKey: autoCropLeft
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1715
             translateLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1716
             resizeForLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1717
             tabable: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1718
             model: autoCropLeft
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1719
             autoRepeat: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1720
             usePreferredWidth: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1721
           )
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1722
          (LabelSpec
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1723
             label: 'Right:'
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1724
             name: 'CropRightLabel'
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1725
             layout: (LayoutFrame 14 0 55 0 90 0 77 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1726
             activeHelpKey: cropRight
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1727
             translateLabel: true
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  1728
             adjust: left
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1729
           )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1730
          (InputFieldSpec
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1731
             name: 'CropRightEntryField'
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  1732
             layout: (LayoutFrame 95 0 55 0 125 0 77 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1733
             activeHelpKey: cropRight
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1734
             tabable: true
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1735
             model: cropRightAmount
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1736
             type: number
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1737
             acceptChannel: acceptChannel
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1738
             acceptOnPointerLeave: false
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1739
           )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1740
          (ActionButtonSpec
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1741
             label: 'Crop Now'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1742
             name: 'CropRightButton'
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1743
             layout: (LayoutFrame 133 0 51 0 229 0 80 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1744
             activeHelpKey: cropRight
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1745
             translateLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1746
             resizeForLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1747
             tabable: true
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1748
             model: cropRightNow
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1749
             autoRepeat: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1750
             usePreferredWidth: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1751
           )
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1752
          (ActionButtonSpec
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1753
             label: 'Auto'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1754
             name: 'Button7'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1755
             layout: (LayoutFrame 236 0 51 0 289 0 80 0)
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1756
             activeHelpKey: autoCropRight
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1757
             translateLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1758
             resizeForLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1759
             tabable: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1760
             model: autoCropRight
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1761
             autoRepeat: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1762
             usePreferredWidth: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1763
           )
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1764
          (LabelSpec
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1765
             label: 'Top:'
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1766
             name: 'CropTopLabel'
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1767
             layout: (LayoutFrame 14 0 85 0 90 0 107 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1768
             activeHelpKey: cropTop
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1769
             translateLabel: true
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  1770
             adjust: left
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1771
           )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1772
          (InputFieldSpec
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1773
             name: 'CropTopEntryField'
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  1774
             layout: (LayoutFrame 95 0 85 0 125 0 107 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1775
             activeHelpKey: cropTop
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1776
             tabable: true
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1777
             model: cropTopAmount
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1778
             type: number
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1779
             acceptChannel: acceptChannel
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1780
             acceptOnPointerLeave: false
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1781
           )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1782
          (ActionButtonSpec
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1783
             label: 'Crop Now'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1784
             name: 'CropTopButton'
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1785
             layout: (LayoutFrame 133 0 81 0 229 0 110 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1786
             activeHelpKey: cropTop
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1787
             translateLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1788
             resizeForLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1789
             tabable: true
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1790
             model: cropTopNow
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1791
             autoRepeat: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1792
             usePreferredWidth: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1793
           )
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1794
          (ActionButtonSpec
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1795
             label: 'Auto'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1796
             name: 'Button8'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1797
             layout: (LayoutFrame 236 0 81 0 289 0 110 0)
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1798
             activeHelpKey: autoCropTop
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1799
             translateLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1800
             resizeForLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1801
             tabable: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1802
             model: autoCropTop
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1803
             autoRepeat: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1804
             usePreferredWidth: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1805
           )
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1806
          (LabelSpec
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1807
             label: 'Bottom:'
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1808
             name: 'CropBottomLabel'
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1809
             layout: (LayoutFrame 14 0 115 0 90 0 137 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1810
             activeHelpKey: cropBottom
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1811
             translateLabel: true
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  1812
             adjust: left
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1813
           )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1814
          (InputFieldSpec
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1815
             name: 'CropBottomEntryField'
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  1816
             layout: (LayoutFrame 95 0 115 0 125 0 137 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1817
             activeHelpKey: cropBottom
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1818
             tabable: true
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1819
             model: cropBottomAmount
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1820
             type: number
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1821
             acceptChannel: acceptChannel
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1822
             acceptOnPointerLeave: false
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1823
           )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1824
          (ActionButtonSpec
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1825
             label: 'Crop Now'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1826
             name: 'CropBottomButton'
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1827
             layout: (LayoutFrame 133 0 111 0 229 0 140 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1828
             activeHelpKey: cropBottom
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1829
             translateLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1830
             resizeForLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1831
             tabable: true
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1832
             model: cropBottomNow
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1833
             autoRepeat: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1834
             usePreferredWidth: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1835
           )
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1836
          (ActionButtonSpec
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1837
             label: 'Auto'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1838
             name: 'Button9'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1839
             layout: (LayoutFrame 236 0 111 0 289 0 140 0)
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1840
             activeHelpKey: autoCropBottom
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1841
             translateLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1842
             resizeForLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1843
             tabable: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1844
             model: autoCropBottom
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1845
             autoRepeat: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1846
             usePreferredWidth: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1847
           )
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1848
          (ActionButtonSpec
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1849
             label: 'All'
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1850
             name: 'Button4'
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1851
             layout: (LayoutFrame 133 0 148 0 229 0 176 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1852
             activeHelpKey: cropAll
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1853
             translateLabel: true
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1854
             resizeForLabel: true
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1855
             tabable: true
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1856
             model: applyCropAction
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1857
           )
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1858
          (HorizontalPanelViewSpec
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1859
             name: 'HorizontalPanel1'
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1860
             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
  1861
             visibilityChannel: cropBoxIsDialog
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1862
             horizontalLayout: fitSpace
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1863
             verticalLayout: center
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1864
             horizontalSpace: 3
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1865
             verticalSpace: 3
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1866
             reverseOrderIfOKAtLeft: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1867
             component: 
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1868
            (SpecCollection
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1869
               collection: (
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1870
                (ActionButtonSpec
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1871
                   label: 'Cancel'
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1872
                   name: 'Button1'
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1873
                   translateLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1874
                   resizeForLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1875
                   tabable: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1876
                   model: cancel
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1877
                   extent: (Point 116 28)
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1878
                 )
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1879
                (ActionButtonSpec
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1880
                   label: 'Apply'
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1881
                   name: 'Button3'
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1882
                   translateLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1883
                   resizeForLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1884
                   tabable: true
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1885
                   model: applyCropAction
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1886
                   extent: (Point 116 28)
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1887
                 )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1888
                (ActionButtonSpec
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1889
                   label: 'OK'
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1890
                   name: 'Button2'
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1891
                   translateLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1892
                   resizeForLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1893
                   tabable: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1894
                   model: accept
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1895
                   extent: (Point 116 28)
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1896
                 )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1897
                )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1898
              
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1899
             )
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1900
           )
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1901
          (ActionButtonSpec
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1902
             label: 'All'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1903
             name: 'Button10'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1904
             layout: (LayoutFrame 236 0 148 0 289 0 176 0)
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1905
             activeHelpKey: autoCropAll
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1906
             translateLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1907
             resizeForLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1908
             tabable: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1909
             model: autoCropAll
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1910
           )
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1911
          )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1912
        
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1913
       )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1914
     )
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1915
!
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1916
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  1917
dialogSpecForNewImage
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1918
    "This resource specification was automatically generated
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1919
     by the UIPainter of ST/X."
519
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  1920
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1921
    "Do not manually edit this!! If it is corrupted,
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1922
     the UIPainter may not be able to read the specification."
519
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  1923
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  1924
    "
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  1925
     UIPainter new openOnClass:ImageEditor andSelector:#dialogSpecForNewImage
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  1926
     ImageEditor new openInterface:#dialogSpecForNewImage
519
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  1927
    "
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  1928
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  1929
    <resource: #canvas>
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  1930
1457
8c15098c3469 ok button is left in some viewStyles
Claus Gittinger <cg@exept.de>
parents: 1449
diff changeset
  1931
    ^ 
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1932
    #(FullSpec
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1933
       name: dialogSpecForNewImage
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1934
       window: 
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1935
      (WindowSpec
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1936
         label: 'New Image'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1937
         name: 'New Image'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1938
         min: (Point 10 10)
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1939
         bounds: (Rectangle 0 0 301 119)
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1940
       )
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1941
       component: 
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1942
      (SpecCollection
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1943
         collection: (
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1944
          (ViewSpec
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1945
             name: 'View'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1946
             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
  1947
             level: 1
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1948
             component: 
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1949
            (SpecCollection
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1950
               collection: (
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1951
                (FramedBoxSpec
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1952
                   label: 'Size'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1953
                   name: 'framedBox1'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1954
                   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
  1955
                   style: (FontDescription helvetica medium roman 12)
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1956
                   labelPosition: topLeft
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1957
                   translateLabel: true
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1958
                   component: 
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1959
                  (SpecCollection
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1960
                     collection: (
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1961
                      (ComboBoxSpec
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1962
                         name: 'defaultSizesComboBox'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1963
                         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
  1964
                         model: selectionOfSize
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1965
                         type: string
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1966
                         acceptOnPointerLeave: false
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1967
                         comboList: listOfDefaultSizes
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1968
                         isFilenameBox: false
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1969
                       )
3494
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
                    
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1972
                   )
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1973
                 )
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1974
                (FramedBoxSpec
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1975
                   label: 'Color Map'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1976
                   name: 'framedBox2'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1977
                   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
  1978
                   style: (FontDescription helvetica medium roman 12)
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1979
                   labelPosition: topLeft
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1980
                   translateLabel: true
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1981
                   component: 
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1982
                  (SpecCollection
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1983
                     collection: (
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1984
                      (ComboListSpec
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1985
                         name: 'colorMapComboBox'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1986
                         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
  1987
                         model: selectionOfColorMap
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1988
                         comboList: listOfColorMaps
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1989
                         useIndex: false
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1990
                         hidePullDownMenuButton: false
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1991
                       )
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1992
                      )
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
                   )
1457
8c15098c3469 ok button is left in some viewStyles
Claus Gittinger <cg@exept.de>
parents: 1449
diff changeset
  1995
                 )
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1996
                )
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1997
              
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  1998
             )
1457
8c15098c3469 ok button is left in some viewStyles
Claus Gittinger <cg@exept.de>
parents: 1449
diff changeset
  1999
           )
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2000
          (UISubSpecification
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2001
             name: 'windowSpecForCommitWithoutChannels'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2002
             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
  2003
             minorKey: windowSpecForCommitWithoutChannels
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2004
             keepSpaceForOSXResizeHandleH: true
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
          )
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2007
        
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2008
       )
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2009
     )
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
  2010
!
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
  2011
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2012
floodFillToleranceSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2013
    "This resource specification was automatically generated
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2014
     by the UIPainter of ST/X."
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
    "Do not manually edit this!! If it is corrupted,
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2017
     the UIPainter may not be able to read the specification."
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2018
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
     UIPainter new openOnClass:ImageEditor andSelector:#floodFillToleranceSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2021
     ImageEditor new openInterface:#floodFillToleranceSpec
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
    <resource: #canvas>
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2025
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2026
    ^ 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2027
    #(FullSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2028
       name: floodFillToleranceSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2029
       window: 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2030
      (WindowSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2031
         label: 'Flood Fill Tolerance'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2032
         name: 'Flood Fill Tolerance'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2033
         min: (Point 10 10)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2034
         bounds: (Rectangle 0 0 364 312)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2035
       )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2036
       component: 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2037
      (SpecCollection
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2038
         collection: (
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2039
          (LabelSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2040
             label: 'Flood Fill Tolerance:'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2041
             name: 'Label1'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2042
             layout: (LayoutFrame 14 0 10 0 242 0 32 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2043
             activeHelpKey: floodFillMaxError
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2044
             visibilityChannel: cropBoxIsNotDialog
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2045
             translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2046
             adjust: left
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2047
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2048
          (LabelSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2049
             label: 'Hue:'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2050
             name: 'Label2'
3440
4e18ffc36717 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3436
diff changeset
  2051
             layout: (LayoutFrame 29 0 38 0 127 0 60 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2052
             activeHelpKey: floodFillMaxError
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2053
             visibilityChannel: cropBoxIsNotDialog
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2054
             translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2055
             adjust: left
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2056
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2057
          (InputFieldSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2058
             name: 'EntryField2'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2059
             layout: (LayoutFrame 132 0 38 0 190 0 60 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2060
             activeHelpKey: floodFillMaxError
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2061
             visibilityChannel: cropBoxIsNotDialog
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2062
             tabable: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2063
             model: floodFillMaxHueError
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2064
             type: number
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2065
             acceptChannel: acceptChannel
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2066
             acceptOnPointerLeave: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2067
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2068
          (LabelSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2069
             label: 'Light:'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2070
             name: 'Label3'
3440
4e18ffc36717 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3436
diff changeset
  2071
             layout: (LayoutFrame 29 0 64 0 127 0 86 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2072
             activeHelpKey: floodFillMaxError
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2073
             visibilityChannel: cropBoxIsNotDialog
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2074
             translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2075
             adjust: left
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2076
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2077
          (InputFieldSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2078
             name: 'EntryField3'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2079
             layout: (LayoutFrame 132 0 64 0 190 0 86 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2080
             activeHelpKey: floodFillMaxError
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2081
             visibilityChannel: cropBoxIsNotDialog
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2082
             tabable: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2083
             model: floodFillMaxLightError
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2084
             type: number
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2085
             acceptChannel: acceptChannel
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2086
             acceptOnPointerLeave: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2087
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2088
          (HorizontalPanelViewSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2089
             name: 'HorizontalPanel1'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2090
             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
  2091
             visibilityChannel: cropBoxIsDialog
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2092
             horizontalLayout: fitSpace
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2093
             verticalLayout: center
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2094
             horizontalSpace: 3
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2095
             verticalSpace: 3
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2096
             reverseOrderIfOKAtLeft: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2097
             component: 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2098
            (SpecCollection
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2099
               collection: (
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2100
                (ActionButtonSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2101
                   label: 'Cancel'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2102
                   name: 'Button1'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2103
                   translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2104
                   resizeForLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2105
                   tabable: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2106
                   model: cancel
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2107
                   extent: (Point 116 28)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2108
                 )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2109
                (ActionButtonSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2110
                   label: 'Apply'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2111
                   name: 'Button3'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2112
                   translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2113
                   resizeForLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2114
                   tabable: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2115
                   model: applyCropAction
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2116
                   extent: (Point 116 28)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2117
                 )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2118
                (ActionButtonSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2119
                   label: 'OK'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2120
                   name: 'Button2'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2121
                   translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2122
                   resizeForLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2123
                   tabable: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2124
                   model: accept
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2125
                   extent: (Point 116 28)
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
       )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2134
     )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2135
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2136
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2137
shiftDialogSpec
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2138
    "This resource specification was automatically generated
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2139
     by the UIPainter of ST/X."
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
    "Do not manually edit this!! If it is corrupted,
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2142
     the UIPainter may not be able to read the specification."
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2143
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
     UIPainter new openOnClass:ImageEditor andSelector:#shiftDialogSpec
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2146
     ImageEditor new openInterface:#shiftDialogSpec
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
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2149
    <resource: #canvas>
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2150
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2151
    ^ 
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2152
     #(FullSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2153
        name: shiftDialogSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2154
        window: 
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2155
       (WindowSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2156
          label: 'Shift'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2157
          name: 'Shift'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2158
          min: (Point 10 10)
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2159
          bounds: (Rectangle 14 46 259 229)
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2160
        )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2161
        component: 
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2162
       (SpecCollection
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2163
          collection: (
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2164
           (LabelSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2165
              label: 'Amount:'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2166
              name: 'AmountLabel'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2167
              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
  2168
              translateLabel: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2169
              adjust: right
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2170
            )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2171
           (InputFieldSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2172
              name: 'AmountEntryField'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2173
              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
  2174
              tabable: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2175
              model: shiftAmount
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2176
              type: number
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2177
              acceptChannel: acceptChannel
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2178
              acceptOnPointerLeave: false
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2179
            )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2180
           (HorizontalPanelViewSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2181
              name: 'HorizontalPanel1'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2182
              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
  2183
              horizontalLayout: fitSpace
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2184
              verticalLayout: center
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2185
              horizontalSpace: 3
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2186
              verticalSpace: 3
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2187
              reverseOrderIfOKAtLeft: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2188
              component: 
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2189
             (SpecCollection
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2190
                collection: (
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2191
                 (ActionButtonSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2192
                    label: 'Cancel'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2193
                    name: 'Button1'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2194
                    translateLabel: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2195
                    tabable: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2196
                    model: cancel
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2197
                    extent: (Point 118 22)
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2198
                  )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2199
                 (ActionButtonSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2200
                    label: 'OK'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2201
                    name: 'Button2'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2202
                    translateLabel: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2203
                    tabable: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2204
                    model: accept
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2205
                    extent: (Point 118 22)
1557
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
                 )
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2208
               
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2209
              )
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2210
            )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2211
           (ArrowButtonSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2212
              name: 'upArrowButton'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2213
              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
  2214
              model: shiftUpNow
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2215
              isTriggerOnDown: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2216
              autoRepeat: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2217
              actionValue: ''
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2218
              direction: up
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2219
            )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2220
           (ArrowButtonSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2221
              name: 'leftArrowButton'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2222
              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
  2223
              model: shiftLeftNow
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2224
              isTriggerOnDown: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2225
              autoRepeat: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2226
              actionValue: ''
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2227
              direction: left
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2228
            )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2229
           (ArrowButtonSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2230
              name: 'rightArrowButton'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2231
              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
  2232
              model: shiftRightNow
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2233
              isTriggerOnDown: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2234
              autoRepeat: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2235
              actionValue: ''
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2236
              direction: right
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2237
            )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2238
           (ArrowButtonSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2239
              name: 'downArrowButton'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2240
              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
  2241
              model: shiftDownNow
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2242
              isTriggerOnDown: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2243
              autoRepeat: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2244
              actionValue: ''
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2245
              direction: down
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2246
            )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2247
           (CheckBoxSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2248
              label: 'Wrap'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2249
              name: 'CheckBox1'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2250
              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
  2251
              model: wrap
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2252
              translateLabel: true
1713
088ff38c03a5 shift + wrap
Claus Gittinger <cg@exept.de>
parents: 1708
diff changeset
  2253
            )
1557
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
        )
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2257
      )
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2258
!
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2259
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2260
uncropSpec
1480
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  2261
    "This resource specification was automatically generated
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  2262
     by the UIPainter of ST/X."
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
    "Do not manually edit this!! If it is corrupted,
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  2265
     the UIPainter may not be able to read the specification."
1796
e2c8c895443a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
  2266
1480
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  2267
    "
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2268
     UIPainter new openOnClass:ImageEditor andSelector:#uncropSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2269
     ImageEditor new openInterface:#uncropSpec
1480
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  2270
    "
1796
e2c8c895443a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
  2271
e2c8c895443a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
  2272
    <resource: #canvas>
e2c8c895443a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
  2273
e2c8c895443a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
  2274
    ^ 
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2275
    #(FullSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2276
       name: uncropSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2277
       window: 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2278
      (WindowSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2279
         label: 'Add Border(s)'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2280
         name: 'Add Border(s)'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2281
         min: (Point 10 10)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2282
         max: (Point 800 478)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2283
         bounds: (Rectangle 0 0 261 228)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2284
       )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2285
       component: 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2286
      (SpecCollection
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2287
         collection: (
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2288
          (LabelSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2289
             label: 'Left:'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2290
             name: 'Label1'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2291
             layout: (LayoutFrame 14 0 21 0 90 0 43 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2292
             translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2293
             adjust: right
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2294
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2295
          (InputFieldSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2296
             name: 'EntryField1'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2297
             layout: (LayoutFrame 95 0 21 0 132 0 43 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2298
             model: cropLeftAmount
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2299
             type: number
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2300
             acceptOnPointerLeave: false
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2301
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2302
          (LabelSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2303
             label: 'Right:'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2304
             name: 'Label2'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2305
             layout: (LayoutFrame 14 0 51 0 90 0 73 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2306
             translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2307
             adjust: right
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2308
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2309
          (InputFieldSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2310
             name: 'EntryField2'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2311
             layout: (LayoutFrame 95 0 51 0 132 0 73 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2312
             model: cropRightAmount
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2313
             type: number
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2314
             acceptOnPointerLeave: false
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2315
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2316
          (LabelSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2317
             label: 'Top:'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2318
             name: 'Label3'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2319
             layout: (LayoutFrame 14 0 81 0 90 0 103 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2320
             translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2321
             adjust: right
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2322
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2323
          (InputFieldSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2324
             name: 'EntryField3'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2325
             layout: (LayoutFrame 95 0 81 0 132 0 103 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2326
             model: cropTopAmount
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2327
             type: number
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2328
             acceptOnPointerLeave: false
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2329
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2330
          (LabelSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2331
             label: 'Bottom:'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2332
             name: 'Label4'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2333
             layout: (LayoutFrame 14 0 111 0 90 0 133 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2334
             translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2335
             adjust: right
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2336
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2337
          (InputFieldSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2338
             name: 'EntryField4'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2339
             layout: (LayoutFrame 95 0 111 0 132 0 133 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2340
             model: cropBottomAmount
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2341
             type: number
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2342
             acceptOnPointerLeave: false
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2343
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2344
          (HorizontalPanelViewSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2345
             name: 'HorizontalPanel1'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2346
             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
  2347
             horizontalLayout: fitSpace
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2348
             verticalLayout: center
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2349
             horizontalSpace: 3
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2350
             verticalSpace: 3
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2351
             reverseOrderIfOKAtLeft: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2352
             component: 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2353
            (SpecCollection
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2354
               collection: (
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2355
                (ActionButtonSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2356
                   label: 'Cancel'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2357
                   name: 'Button1'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2358
                   translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2359
                   model: cancel
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2360
                   extent: (Point 124 22)
1796
e2c8c895443a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
  2361
                 )
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2362
                (ActionButtonSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2363
                   label: 'OK'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2364
                   name: 'Button2'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2365
                   translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2366
                   model: accept
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2367
                   extent: (Point 125 22)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2368
                 )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2369
                )
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
             )
1796
e2c8c895443a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
  2372
           )
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2373
          )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2374
        
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2375
       )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2376
     )
1480
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  2377
!
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  2378
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2379
windowSpec
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2380
    "This resource specification was automatically generated
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2381
     by the UIPainter of ST/X."
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2382
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2383
    "Do not manually edit this!! If it is corrupted,
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2384
     the UIPainter may not be able to read the specification."
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2385
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2386
    "
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2387
     UIPainter new openOnClass:ImageEditor andSelector:#windowSpec
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2388
     ImageEditor new openInterface:#windowSpec
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2389
     ImageEditor open
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2390
    "
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2391
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2392
    <resource: #canvas>
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2393
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  2394
    ^ 
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2395
    #(FullSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2396
       name: windowSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2397
       window: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2398
      (WindowSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2399
         label: 'Image Editor'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2400
         name: 'Image Editor'
3443
b9d9eb4b34f9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3442
diff changeset
  2401
         min: (Point 800 400)
b9d9eb4b34f9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3442
diff changeset
  2402
         bounds: (Rectangle 0 0 800 446)
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2403
         menu: menu
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2404
         icon: defaultIcon
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2405
       )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2406
       component: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2407
      (SpecCollection
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2408
         collection: (
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2409
          (MenuPanelSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2410
             name: 'menuToolbarView'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2411
             layout: (LayoutFrame 0 0.0 0 0 0 1.0 32 0)
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2412
             style: (FontDescription helvetica medium roman 10)
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2413
             menu: menuToolbar
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2414
             showSeparatingLines: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2415
           )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2416
          (VariableHorizontalPanelSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2417
             name: 'mainPanel'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2418
             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
  2419
             snapMode: both
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2420
             barLevel: 0
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2421
             component: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2422
            (SpecCollection
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2423
               collection: (
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2424
                (ViewSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2425
                   name: 'leftView'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2426
                   level: 1
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2427
                   component: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2428
                  (SpecCollection
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2429
                     collection: (
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2430
                      (VariableVerticalPanelSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2431
                         name: 'verticalPanel'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2432
                         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
  2433
                         level: 0
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2434
                         snapMode: both
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2435
                         component: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2436
                        (SpecCollection
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2437
                           collection: (
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2438
                            (ViewSpec
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  2439
                               name: 'ColorAnCropBox'
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2440
                               component: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2441
                              (SpecCollection
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2442
                                 collection: (
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2443
                                  (TabViewSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2444
                                     name: 'TabHeader1'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2445
                                     layout: (LayoutFrame 0 0 0 0 0 1 36 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2446
                                     model: colorCropTabSelectionIndexHolder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2447
                                     menu: colorCropTabLabelList
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2448
                                     useIndex: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2449
                                     translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2450
                                   )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2451
                                  (ViewSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2452
                                     name: 'ColorBox'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2453
                                     layout: (LayoutFrame 0 0 36 0 0 1 0 1)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2454
                                     visibilityChannel: colorBoxVisibleHolder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2455
                                     component: 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2456
                                    (SpecCollection
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2457
                                       collection: (
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2458
                                        (MenuPanelSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2459
                                           name: 'MouseButtonColorToolBar'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2460
                                           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
  2461
                                           level: 0
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2462
                                           menu: menuMouseButtonColors
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2463
                                         )
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2464
                                        (LabelSpec
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2465
                                           label: 'Label'
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2466
                                           name: 'Label1'
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2467
                                           layout: (LayoutFrame -160 1 0 0 -104 1 22 0)
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2468
                                           translateLabel: true
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2469
                                           labelChannel: alphaText
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2470
                                           visibilityChannel:  alphaVisibleHolder
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2471
                                           activeHelpKey: drawingAlpha
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2472
                                         )
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2473
                                        (InputFieldSpec
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2474
                                           name: 'EntryField1'
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2475
                                           layout: (LayoutFrame -106 1 2 0 -56 1 22 0)
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2476
                                           acceptOnReturn: true
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2477
                                           acceptOnTab: true
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2478
                                           acceptOnPointerLeave: true
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2479
                                           visibilityChannel:  alphaVisibleHolder
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2480
                                           activeHelpKey: drawingAlpha
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2481
                   model: alphaHolder
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2482
                   type: numberInRange
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2483
                   numChars: 3
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2484
                   minValue: 0
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2485
                   maxValue: 100
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2486
                                         )
3421
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2487
                                        (ViewSpec
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2488
                                           name: 'Box1'
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2489
                                           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
  2490
                                           activeHelpKey: drawingColor1
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2491
                                           level: -1
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2492
                                           backgroundChannel: drawingColor1Holder
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2493
                                         )
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2494
                                        (ViewSpec
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2495
                                           name: 'Box2'
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2496
                                           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
  2497
                                           activeHelpKey: drawingColor2
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2498
                                           level: -1
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2499
                                           backgroundChannel: drawingColor2Holder
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2500
                                         )
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2501
                                        (DataSetSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2502
                                           name: 'colorDataSetView'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2503
                                           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
  2504
                                           activeHelpKey: colorMapTable
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2505
                                           style: (FontDescription helvetica medium roman 10)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2506
                                           model: selectedColors
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2507
                                           menu: colorMapMenuHolder
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2508
                                           hasHorizontalScrollBar: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2509
                                           hasVerticalScrollBar: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2510
                                           miniScrollerHorizontal: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2511
                                           miniScrollerVertical: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2512
                                           dataList: listOfColors
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2513
                                           has3Dseparators: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2514
                                           doubleClickSelector: doubleClickOnColor:
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2515
                                           columnHolder: colorTableColumns
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2516
                                           multipleSelectOk: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2517
                                           verticalSpacing: 1
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2518
                                           columnAdaptor: colorColumnAdaptor
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
                                      
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2522
                                     )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2523
                                   )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2524
                                  (ViewSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2525
                                     name: 'FloodFillBox'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2526
                                     layout: (LayoutFrame 0 0 36 0 0 1 0 1)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2527
                                     visibilityChannel: floodFillBoxVisibleHolder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2528
                                     component: 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2529
                                    (SpecCollection
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2530
                                       collection: (
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2531
                                        (UISubSpecification
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2532
                                           name: 'SubSpecification2'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2533
                                           layout: (LayoutFrame 0 0 0 0 0 1 0 1)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2534
                                           minorKey: floodFillToleranceSpec
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
                                        )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2537
                                      
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2538
                                     )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2539
                                   )
3400
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2540
                                  (ViewSpec
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2541
                                     name: 'CropBox'
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2542
                                     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
  2543
                                     visibilityChannel: cropBoxVisibleHolder
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2544
                                     component: 
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2545
                                    (SpecCollection
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2546
                                       collection: (
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2547
                                        (UISubSpecification
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2548
                                           name: 'SubSpecification1'
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2549
                                           layout: (LayoutFrame 0 0 0 0 0 1 0 1)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2550
                                           minorKey: cropSpec
3400
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
                                        )
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2553
                                      
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2554
                                     )
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2555
                                   )
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2556
                                  )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2557
                                
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2558
                               )
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  2559
                             )
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2560
                            (ArbitraryComponentSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2561
                               name: 'imagePreView'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2562
                               activeHelpKey: previewView
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2563
                               menu: previewMenu
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2564
                               hasHorizontalScrollBar: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2565
                               hasVerticalScrollBar: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2566
                               miniScrollerHorizontal: false
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2567
                               miniScrollerVertical: false
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2568
                               hasBorder: false
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2569
                               component: ImageView
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
                            )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2572
                          
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
                         handles: (Any 0.5 1.0)
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  2575
                       )
3195
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
                    
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2578
                   )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2579
                 )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2580
                (ViewSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2581
                   name: 'rightView'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2582
                   component: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2583
                  (SpecCollection
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2584
                     collection: (
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2585
                      (MenuPanelSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2586
                         name: 'ToolBar1'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2587
                         layout: (LayoutFrame 0 0 0 0.0 28 0 0 1.0)
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2588
                         level: 1
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2589
                         menu: toolsMenuToolbar
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2590
                         verticalLayout: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2591
                         centerItems: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2592
                         textDefault: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2593
                       )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2594
                      (ViewSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2595
                         name: 'editingView'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2596
                         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
  2597
                         level: 1
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2598
                         component: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2599
                        (SpecCollection
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2600
                           collection: (
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2601
                            (ArbitraryComponentSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2602
                               name: 'imageEditView'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2603
                               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
  2604
                               hasHorizontalScrollBar: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2605
                               hasVerticalScrollBar: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2606
                               hasBorder: false
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2607
                               component: ImageEditView
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2608
                             )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2609
                            (LabelSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2610
                               name: 'coordLabel'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2611
                               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
  2612
                               level: -1
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2613
                               translateLabel: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2614
                               labelChannel: imageInfoHolder
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2615
                               resizeForLabel: false
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2616
                               adjust: left
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  2617
                             )
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2618
                            (ArrowButtonSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2619
                               name: 'magnifyDownButton'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2620
                               layout: (LayoutFrame -80 1 -22 1 -58 1 0 1)
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2621
                               activeHelpKey: magnifyImageDown
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2622
                               translateLabel: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2623
                               model: doMagnifyDown
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2624
                               enableChannel: imageIsLoadedHolder
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2625
                               isTriggerOnDown: true
3479
8053bda07548 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3478
diff changeset
  2626
                               autoRepeat: true
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2627
                               direction: left
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2628
                             )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2629
                            (ArrowButtonSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2630
                               name: 'magnifyUpButton'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2631
                               layout: (LayoutFrame -24 1 -22 1 -2 1 0 1)
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2632
                               activeHelpKey: magnifyImageUp
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2633
                               translateLabel: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2634
                               model: doMagnifyUp
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2635
                               enableChannel: imageIsLoadedHolder
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2636
                               isTriggerOnDown: true
3479
8053bda07548 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3478
diff changeset
  2637
                               autoRepeat: true
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2638
                               direction: right
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2639
                             )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2640
                            (InputFieldSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2641
                               name: 'magnificationInputField'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2642
                               layout: (LayoutFrame -57 1 -22 1 -26 1 0 1)
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2643
                               activeHelpKey: magnificationNumber
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2644
                               enableChannel: imageIsLoadedHolder
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2645
                               model: magnificationHolder
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2646
                               type: numberInRange
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2647
                               acceptOnReturn: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2648
                               acceptOnTab: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2649
                               numChars: 2
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2650
                               minValue: 1
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2651
                               maxValue: 99
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2652
                               acceptOnPointerLeave: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2653
                             )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2654
                            )
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
                         )
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  2657
                       )
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2658
                      )
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
                   )
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  2661
                 )
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2662
                )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2663
              
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2664
             )
3443
b9d9eb4b34f9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3442
diff changeset
  2665
             handles: (Any 0.47999999999999998 1.0)
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  2666
           )
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2667
          (UISubSpecification
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2668
             name: 'infoBarSubSpec'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2669
             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
  2670
             majorKey: ToolApplicationModel
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2671
             minorKey: windowSpecForInfoBar
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
          )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2674
        
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2675
       )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2676
     )
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2677
3488
e9655ba452c7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3487
diff changeset
  2678
    "Modified: / 05-09-2017 / 10:46:56 / cg"
519
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  2679
! !
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  2680
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  2681
!ImageEditor class methodsFor:'menu specs'!
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  2682
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2683
colorMapMenu
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2684
    "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
  2685
     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
  2686
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2687
    "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
  2688
     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
  2689
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2690
    "
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2691
     MenuEditor new openOnClass:ImageEditor andSelector:#colorMapMenu
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2692
     (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
  2693
    "
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2694
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2695
    <resource: #menu>
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2696
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2697
    ^ 
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2698
     #(Menu
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2699
        (
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2700
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2701
            enabled: canAddColorToColormapHolder
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2702
            label: 'Add Color'
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2703
            itemValue: addColorToColormap
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2704
            translateLabel: true
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2705
          )
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2706
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2707
            enabled: canAddColorToColormapHolder
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  2708
            label: 'Add & Paste Color'
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  2709
            itemValue: addPastedColorToColormap
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  2710
            translateLabel: true
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  2711
          )
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  2712
         (MenuItem
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  2713
            enabled: canAddColorToColormapHolder
2539
3fa0fde65f75 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
  2714
            label: 'Pick and Add Color...'
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2715
            itemValue: pickAndAddColorToColormap
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2716
            translateLabel: true
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
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2719
            label: '-'
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2720
          )
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2721
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2722
            enabled: hasColormapAndSingleColorSelectedHolder
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2723
            label: 'Cut Color'
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2724
            itemValue: cutColorFromColormap
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2725
            translateLabel: true
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2726
            isVisible: false
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2727
          )
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2728
         (MenuItem
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2729
            enabled: hasSingleColorSelectedHolder
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2730
            label: 'Copy Color'
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2731
            itemValue: copyColorFromColormap
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2732
            translateLabel: true
2841
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  2733
            shortcutKey: Copy
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2734
          )
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2735
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2736
            enabled: hasColormapAndSingleWritableColorSelectedHolder
2539
3fa0fde65f75 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
  2737
            label: 'Pick and Paste Color...'
1933
2fe701f721ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1931
diff changeset
  2738
            itemValue: pickAndPasteColor
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2739
            translateLabel: true
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2740
          )
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2741
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2742
            enabled: canChangeColorInColormapHolder
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2743
            label: 'Paste Color'
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2744
            itemValue: pasteColorIntoColormap
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2745
            translateLabel: true
2841
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  2746
            shortcutKey: Paste
1852
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
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2749
            label: '-'
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2750
          )
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2751
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2752
            enabled: hasColormapAndSingleWritableColorSelectedHolder
2539
3fa0fde65f75 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
  2753
            label: 'Edit Color...'
1931
34b208e7231f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  2754
            itemValue: editSelectedColor
34b208e7231f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  2755
            translateLabel: true
34b208e7231f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  2756
          )
34b208e7231f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  2757
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2758
            enabled: hasColormapAndSingleWritableColorSelectedHolder
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2759
            label: 'Brighter'
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2760
            itemValue: makeSelectedColorBrighter
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2761
            translateLabel: true
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2762
          )
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2763
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2764
            enabled: hasColormapAndSingleWritableColorSelectedHolder
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2765
            label: 'Darker'
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2766
            itemValue: makeSelectedColorDarker
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2767
            translateLabel: true
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2768
          )
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2769
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2770
            enabled: hasColormapAndSingleWritableColorSelectedHolder
1884
2c4d13ecd7ed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1883
diff changeset
  2771
            label: 'Make Gray'
2c4d13ecd7ed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1883
diff changeset
  2772
            itemValue: makeSelectedColorGray
2c4d13ecd7ed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1883
diff changeset
  2773
            translateLabel: true
2c4d13ecd7ed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1883
diff changeset
  2774
          )
2c4d13ecd7ed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1883
diff changeset
  2775
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2776
            enabled: hasColormapAndSingleWritableColorSelectedHolder
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2777
            label: 'Color Shift'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2778
            itemValue: makeSelectedColorShifted
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2779
            translateLabel: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2780
          )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2781
         (MenuItem
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2782
            label: '-'
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2783
          )
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2784
         (MenuItem
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2785
            enabled: hasSingleColorSelectedHolder
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2786
            label: 'Inspect Color'
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2787
            itemValue: inspectColor
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2788
            translateLabel: true
2651
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  2789
          )
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  2790
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2791
            enabled: imageHasColormapHolder
2651
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  2792
            label: 'Inspect Colormap'
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  2793
            itemValue: inspectColormap
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  2794
            translateLabel: true
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2795
          )
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2796
         )
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2797
        nil
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2798
        nil
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2799
      )
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2800
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  2801
    "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
  2802
!
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2803
400
228524287573 intitial checkin
tz
parents:
diff changeset
  2804
menu
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  2805
    "This resource specification was automatically generated
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  2806
     by the MenuEditor of ST/X."
400
228524287573 intitial checkin
tz
parents:
diff changeset
  2807
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  2808
    "Do not manually edit this!! If it is corrupted,
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  2809
     the MenuEditor may not be able to read the specification."
400
228524287573 intitial checkin
tz
parents:
diff changeset
  2810
228524287573 intitial checkin
tz
parents:
diff changeset
  2811
    "
228524287573 intitial checkin
tz
parents:
diff changeset
  2812
     MenuEditor new openOnClass:ImageEditor andSelector:#menu
228524287573 intitial checkin
tz
parents:
diff changeset
  2813
     (Menu new fromLiteralArrayEncoding:(ImageEditor menu)) startUp
228524287573 intitial checkin
tz
parents:
diff changeset
  2814
    "
228524287573 intitial checkin
tz
parents:
diff changeset
  2815
228524287573 intitial checkin
tz
parents:
diff changeset
  2816
    <resource: #menu>
228524287573 intitial checkin
tz
parents:
diff changeset
  2817
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2818
    ^ 
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2819
     #(Menu
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2820
        (
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2821
         (MenuItem
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2822
            label: '&File'
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2823
            translateLabel: true
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  2824
            submenuChannel: menuFile
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2825
            "/ keepLinkedMenu: true
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2826
          )
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2827
         (MenuItem
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2828
            label: 'Edit'
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2829
            translateLabel: true
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  2830
            submenuChannel: menuEdit
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2831
            "/ keepLinkedMenu: true
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2832
          )
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2833
         (MenuItem
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2834
            label: 'Mode'
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2835
            translateLabel: true
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2836
            submenuChannel: modeMenu
3374
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  2837
            isVisible: modeMenuVisible
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  2838
          )
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2839
         (MenuItem
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  2840
            label: 'Image'
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2841
            translateLabel: true
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2842
            submenuChannel: menuColors
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2843
          )
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2844
         (MenuItem
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2845
            label: 'Settings'
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2846
            translateLabel: true
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2847
            submenuChannel: menuSettings
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2848
          )
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2849
         (MenuItem
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2850
            label: 'History'
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2851
            translateLabel: true
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  2852
            isVisible: isStandAlone
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2853
            submenuChannel: menuHistory
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2854
          )
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2855
         (MenuItem
2136
bb10485fa455 support '?' as help (for now: controlled by resources)
Claus Gittinger <cg@exept.de>
parents: 2125
diff changeset
  2856
            label: 'MENU_Help'
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2857
            translateLabel: true
2125
22ad4aa3e495 #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2073
diff changeset
  2858
            startGroup: conditionalRight
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2859
            submenuChannel: menuHelp
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2860
          )
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2861
         )
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2862
        nil
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2863
        nil
400
228524287573 intitial checkin
tz
parents:
diff changeset
  2864
      )
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  2865
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  2866
    "Modified: / 23-10-2017 / 10:39:43 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  2867
!
228524287573 intitial checkin
tz
parents:
diff changeset
  2868
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2869
menuColors
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2870
    "This resource specification was automatically generated
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2871
     by the MenuEditor of ST/X."
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2872
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2873
    "Do not manually edit this!! If it is corrupted,
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2874
     the MenuEditor may not be able to read the specification."
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2875
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  2876
2585
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
     MenuEditor new openOnClass:ImageEditor andSelector:#menuColors
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2879
     (Menu new fromLiteralArrayEncoding:(ImageEditor menuColors)) startUp
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
    <resource: #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
    ^ 
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2885
     #(Menu
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2886
        (
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2887
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  2888
            enabled: imageIsLoaded
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2889
            label: 'Depth'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2890
            submenu: 
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2891
           (Menu
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2892
              (
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2893
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2894
                  activeHelpKey: colorMap1
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  2895
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2896
                  label: '1-Plane'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2897
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2898
                  argument: depth1
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2899
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2900
                  choiceValue: depth1
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2901
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2902
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2903
                  activeHelpKey: colorMap1M
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  2904
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2905
                  label: '1-Plane + Mask'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2906
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2907
                  argument: masked1
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2908
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2909
                  choiceValue: masked1
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
                  label: '-'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2913
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2914
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2915
                  activeHelpKey: colorMap2
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  2916
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2917
                  label: '2-Plane'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2918
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2919
                  argument: depth2
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2920
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2921
                  choiceValue: depth2
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2922
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2923
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2924
                  activeHelpKey: colorMap2M
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  2925
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2926
                  label: '2-Plane + Mask'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2927
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2928
                  argument: masked2
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2929
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2930
                  choiceValue: masked2
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
                  label: '-'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2934
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2935
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2936
                  activeHelpKey: colorMap4
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  2937
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2938
                  label: '4-Plane'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2939
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2940
                  argument: depth4
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2941
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2942
                  choiceValue: depth4
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2943
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2944
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2945
                  activeHelpKey: colorMap4M
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  2946
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2947
                  label: '4-Plane + Mask'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2948
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2949
                  argument: masked4
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2950
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2951
                  choiceValue: masked4
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
                  label: '-'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2955
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2956
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2957
                  activeHelpKey: colorMap8
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  2958
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2959
                  label: '8-Plane'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2960
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2961
                  argument: depth8
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2962
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2963
                  choiceValue: depth8
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2964
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2965
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2966
                  activeHelpKey: colorMap8M
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  2967
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2968
                  label: '8-Plane + Mask'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2969
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2970
                  argument: masked8
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2971
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2972
                  choiceValue: masked8
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
                  label: '-'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2976
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2977
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2978
                  activeHelpKey: colorMap16
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  2979
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2980
                  label: '16-Plane'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2981
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2982
                  argument: depth16
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2983
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2984
                  choiceValue: depth16
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2985
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2986
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2987
                  activeHelpKey: colorMap16M
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  2988
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2989
                  label: '16-Plane + Mask'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2990
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2991
                  argument: masked16
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2992
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2993
                  choiceValue: masked16
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
                  label: '-'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2997
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2998
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2999
                  activeHelpKey: colorMap24
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3000
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3001
                  label: '24-Plane'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3002
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3003
                  argument: depth24
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3004
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3005
                  choiceValue: depth24
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3006
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3007
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3008
                  activeHelpKey: colorMap24M
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3009
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3010
                  label: '24-Plane + Mask'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3011
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3012
                  argument: masked24
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3013
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3014
                  choiceValue: masked24
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
                  label: '-'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3018
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3019
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3020
                  activeHelpKey: colorMap32
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3021
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3022
                  label: '32-Plane (rgba)'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3023
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3024
                  argument: depth32
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3025
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3026
                  choiceValue: depth32
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3027
                )
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
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3030
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3031
            )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3032
          )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3033
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3034
            enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3035
            label: 'ColorMap'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3036
            submenu: 
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3037
           (Menu
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3038
              (
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3039
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3040
                  activeHelpKey: compressColormap
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3041
                  enabled: hasColormapHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3042
                  label: 'Compress Colormap'
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3043
                  itemValue: #'menu_compressColorMap'
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3044
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3045
               (MenuItem
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3046
                  enabled: hasColormapHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3047
                  label: 'Sort Colormap'
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3048
                  itemValue: #'menu_sortColorMap'
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3049
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3050
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3051
                  label: 'Reduce Number of Colors by Rounding...'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3052
                  itemValue: reduceNumberOfColors2
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3053
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3054
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3055
                  label: 'Reduce Number of Colors by Masking Bits...'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3056
                  itemValue: reduceNumberOfColors
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  3057
                )
2585
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
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3060
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3061
            )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3062
          )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3063
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3064
            enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3065
            label: 'Process'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3066
            submenu: 
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3067
           (Menu
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3068
              (
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3069
               (MenuItem
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3070
                  label: 'Negative'
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3071
                  itemValue: makeNegative
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3072
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3073
               (MenuItem
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3074
                  label: 'Invert Pixel Bits'
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3075
                  itemValue: makeInvertedBits
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3076
                  isVisible: hasColormap
3458
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
159bab42fdbb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
  3079
                  label: '-'
159bab42fdbb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
  3080
                )
159bab42fdbb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
  3081
               (MenuItem
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3082
                  enabled: allowedToChangeImageDimensionAndDepth
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3083
                  label: 'Make dithered 8Bit Palette'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3084
                  itemValue: makeDitheredPaletteImage
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3085
                  isVisible: false
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3086
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3087
               (MenuItem
3458
159bab42fdbb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
  3088
                  label: 'Dither to Depth...'
159bab42fdbb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
  3089
                  itemValue: ditherToDepth
159bab42fdbb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
  3090
                )
159bab42fdbb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
  3091
               (MenuItem
3471
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  3092
                  label: 'Threshold to Depth...'
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  3093
                  itemValue: thresholdToDepth
3476
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: '-'
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3097
                )
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3098
               (MenuItem
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3099
                  label: 'Make Monochrome...'
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3100
                  itemValue: makeMonochromeImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3101
                )
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3102
               (MenuItem
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3103
                  label: 'Make GrayScale (same Depth)'
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3104
                  itemValue: makeGrayScaleImage
3471
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  3105
                )
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  3106
               (MenuItem
3460
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  3107
                  label: 'Make GrayScale with Depth (Dither)...'
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  3108
                  itemValue: ditherGrayToDepth
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  3109
                )
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  3110
               (MenuItem
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  3111
                  label: 'Make GrayScale with Depth (Threshold)...'
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  3112
                  itemValue: thresholdGrayToDepth
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3113
                )
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3114
               (MenuItem
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3115
                  label: 'Make GrayScale with N Gray Colors (Dither)...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3116
                  itemValue: ditherToNumberOfGrayColors
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3117
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3118
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3119
                  label: 'Make GrayScale with N Gray Colors (Threshold)...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3120
                  itemValue: thresholdToNumberOfGrayColors
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3121
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3122
               (MenuItem
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3123
                  label: '-'
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3124
                )
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3125
               (MenuItem
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3126
                  label: 'Make Slightly Brighter'
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3127
                  itemValue: makeSlightlyBrighter
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3128
                )
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3129
               (MenuItem
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3130
                  label: 'Make Brighter'
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3131
                  itemValue: makeBrighter
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3132
                )
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3133
               (MenuItem
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3134
                  label: 'Make Slightly Darker'
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3135
                  itemValue: makeSlightlyDarker
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3136
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3137
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3138
                  label: 'Make Darker'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3139
                  itemValue: makeDarker
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: '-'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3143
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3144
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3145
                  label: 'Change HLS...'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3146
                  itemValue: changeHLS
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3147
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3148
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3149
                  label: 'Colorize...'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3150
                  itemValue: colorize
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3151
                )
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3152
               (MenuItem
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3153
                  enabled: imageIsLoadedHolder
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3154
                  label: 'Brighten'
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3155
                  itemValue: doBrightenImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3156
                )
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3157
               (MenuItem
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3158
                  enabled: imageIsLoadedHolder
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3159
                  label: 'Darken'
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3160
                  itemValue: doDarkenImage
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3161
                )
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
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3164
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3165
            )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3166
          )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3167
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3168
            enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3169
            label: 'Mask'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3170
            submenu: 
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3171
           (Menu
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3172
              (
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3173
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3174
                  activeHelpKey: copyMask
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3175
                  enabled: hasMask
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3176
                  label: 'Copy Mask'
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3177
                  itemValue: #'menu_copyMask'
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3178
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3179
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3180
                  activeHelpKey: pasteMask
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3181
                  enabled: hasMask
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3182
                  label: 'Paste Mask'
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3183
                  itemValue: #'menu_pasteMask'
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3184
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3185
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3186
                  enabled: hasMask
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3187
                  label: 'Clear Masked Pixels'
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3188
                  itemValue: #'menu_clearMaskedPixels'
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  3189
                )
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  3190
               (MenuItem
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  3191
                  enabled: hasMask
2653
f0e64b82fa93 changed: #menuColors
Claus Gittinger <cg@exept.de>
parents: 2652
diff changeset
  3192
                  label: 'Clear Colormap Entry for Masked Pixels'
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3193
                  itemValue: #'menu_clearColormapEntry0AndMaskedPixels'
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3194
                )
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
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3197
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3198
            )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3199
          )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3200
         )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3201
        nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3202
        nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3203
      )
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3204
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3205
    "Modified: / 23-10-2017 / 11:18:58 / cg"
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3206
!
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3207
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3208
menuEdit
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3209
    "This resource specification was automatically generated
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3210
     by the MenuEditor of ST/X."
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3211
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3212
    "Do not manually edit this!! If it is corrupted,
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3213
     the MenuEditor may not be able to read the specification."
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3214
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3215
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3216
    "
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3217
     MenuEditor new openOnClass:ImageEditor andSelector:#menuEdit
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3218
     (Menu new fromLiteralArrayEncoding:(ImageEditor menuEdit)) startUp
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
    <resource: #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
    ^ 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3224
     #(Menu
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3225
        (
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3226
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3227
            activeHelpKey: editUndo
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3228
            enabled: canUndoHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3229
            label: 'Undo'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3230
            itemValue: doUndo
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
            label: '-'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3234
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3235
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3236
            enabled: imageIsLoadedHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3237
            label: 'Copy to Clipboard'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3238
            itemValue: doCopyImageToClipboard
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
            label: '-'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3242
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3243
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3244
            activeHelpKey: editResize
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3245
            enabled: imageIsLoadedAndAllowedToChangeImageDimensionAndDepth
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3246
            label: 'Resize...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3247
            itemValue: doResizeImage
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3248
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3249
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3250
            activeHelpKey: editMagnifyImage
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3251
            enabled: imageIsLoadedAndAllowedToChangeImageDimensionAndDepth
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3252
            label: 'Magnify...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3253
            itemValue: doMagnifyImage
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3254
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3255
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3256
            activeHelpKey: editMagnifyImage
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3257
            enabled: imageIsLoadedAndAllowedToChangeImageDimensionAndDepth
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3258
            label: 'Magnify By...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3259
            itemValue: doMagnifyImageBy
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3260
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3261
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3262
            activeHelpKey: editRotate
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3263
            enabled: imageIsLoadedAndAllowedToChangeImageDimensionAndDepth
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3264
            label: 'Rotate...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3265
            itemValue: doRotateImage
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3266
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3267
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3268
            activeHelpKey: edit3DProjection
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3269
            enabled: imageIsLoadedAndAllowedToChangeImageDimensionAndDepth
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3270
            label: '3D Projection...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3271
            itemValue: do3DProjection
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3272
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3273
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3274
            enabled: imageIsLoadedAndAllowedToFlipHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3275
            label: 'Flip'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3276
            submenu: 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3277
           (Menu
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3278
              (
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3279
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3280
                  activeHelpKey: editFlipVertical
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3281
                  enabled: imageIsLoadedAndNotReadonlyHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3282
                  label: 'Flip - Vertical'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3283
                  itemValue: doFlipVertical
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3284
                  labelImage: (ResourceRetriever ImageEditor flipVerticalIcon 'Flip - Vertical')
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3285
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3286
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3287
                  activeHelpKey: editFlipHorizontal
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3288
                  enabled: imageIsLoadedAndNotReadonlyHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3289
                  label: 'Flip - Horizontal'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3290
                  itemValue: doFlipHorizontal
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3291
                  labelImage: (ResourceRetriever ImageEditor flipHorizontalIcon 'Flip - Horizontal')
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3292
                )
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
              nil
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3295
              nil
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3296
            )
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
            label: '-'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3300
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3301
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3302
            enabled: imageIsLoadedAndAllowedToChangeImageDimension
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3303
            label: 'Crop'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3304
            submenu: 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3305
           (Menu
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3306
              (
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3307
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3308
                  activeHelpKey: cropManual
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3309
                  label: 'Manual...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3310
                  itemValue: doCropManual
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3311
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3312
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3313
                  label: '-'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3314
                  isVisible: false
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3315
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3316
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3317
                  activeHelpKey: autoCropAll
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3318
                  label: 'All'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3319
                  itemValue: autoCropAll
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
                  label: '-'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3323
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3324
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3325
                  activeHelpKey: autoCropLeft
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3326
                  label: 'Left'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3327
                  itemValue: autoCropLeft
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3328
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3329
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3330
                  activeHelpKey: autoCropRight
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3331
                  label: 'Right'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3332
                  itemValue: autoCropRight
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3333
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3334
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3335
                  activeHelpKey: autoCropTop
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3336
                  label: 'Top'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3337
                  itemValue: autoCropTop
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3338
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3339
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3340
                  activeHelpKey: autoCropBottom
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3341
                  label: 'Bottom'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3342
                  itemValue: autoCropBottom
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3343
                )
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
              nil
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3346
              nil
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3347
            )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3348
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3349
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3350
            activeHelpKey: uncropManual
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3351
            enabled: imageIsLoadedAndAllowedToChangeImageDimensionAndDepth
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3352
            label: 'Uncrop (Add Border)...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3353
            itemValue: doUnCropManual
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3354
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3355
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3356
            activeHelpKey: shiftManual
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3357
            enabled: imageIsLoadedAndAllowedToChangeImageDimension
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3358
            label: 'Shift...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3359
            itemValue: doShiftManual
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
            label: '-'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3363
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3364
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3365
            activeHelpKey: fileEditMask
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3366
            enabled: hasMaskHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3367
            label: 'Edit Mask'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3368
            itemValue: doEditMask
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3369
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3370
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3371
            enabled: imageIsLoadedAndNotReadonlyHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3372
            label: 'Text...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3373
            itemValue: doInsertTextFromUser
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
            label: '-'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3377
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3378
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3379
            enabled: imageIsLoadedHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3380
            label: 'Animation Sequence'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3381
            submenu: 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3382
           (Menu
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3383
              (
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3384
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3385
                  enabled: imageHasNextImageHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3386
                  label: 'Next in Sequence'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3387
                  itemValue: nextImageInSequence
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3388
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3389
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3390
                  enabled: imageHasPreviousImageHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3391
                  label: 'Previous in Sequence'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3392
                  itemValue: previousImageInSequence
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
                  label: '-'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3396
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3397
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3398
                  enabled: imageHasImageSequenceHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3399
                  label: 'Edit each from Sequence'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3400
                  itemValue: editEachImageFromSequence
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3401
                )
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
              nil
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3404
              nil
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3405
            )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3406
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3407
         )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3408
        nil
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3409
        nil
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3410
      )
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3411
!
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3412
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3413
menuFile
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3414
    "This resource specification was automatically generated
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3415
     by the MenuEditor of ST/X."
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3416
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3417
    "Do not manually edit this!! If it is corrupted,
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3418
     the MenuEditor may not be able to read the specification."
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3419
3022
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  3420
2196
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
     MenuEditor new openOnClass:ImageEditor andSelector:#menuFile
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3423
     (Menu new fromLiteralArrayEncoding:(ImageEditor menuFile)) startUp
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
    <resource: #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
    ^ 
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3429
     #(Menu
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3430
        (
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3431
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3432
            activeHelpKey: fileNewImageEditor
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3433
            label: 'New ImageEditor'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3434
            itemValue: doNewImageEditor
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3435
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3436
         (MenuItem
2876
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3437
            label: '-'
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3438
          )
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3439
         (MenuItem
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3440
            activeHelpKey: fileNewImage
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3441
            label: 'New...'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3442
            itemValue: doNewImage
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3443
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3444
         (MenuItem
3200
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  3445
            activeHelpKey: fileNewImageFromClipboard
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3446
            label: 'New from ClipBoard'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3447
            itemValue: doNewImageFromClipboard
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3448
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3449
         (MenuItem
3200
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  3450
            activeHelpKey: fileNewMaskFromClipboard
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  3451
            label: 'Mask from ClipBoard'
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  3452
            itemValue: doNewMaskFromClipboard
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  3453
          )
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  3454
         (MenuItem
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3455
            label: '-'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3456
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3457
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3458
            activeHelpKey: fileLoadFromClass
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3459
            label: 'Load...'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3460
            itemValue: doLoadFromClass
3374
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  3461
            isVisible: methodSaveAndLoadMenuItemsVisible
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3462
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3463
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3464
            activeHelpKey: fileLoadFromFile
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3465
            label: 'Load from File...'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3466
            itemValue: doLoadFromFile
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3467
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3468
         (MenuItem
2796
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  3469
            activeHelpKey: fileLoadFromURL
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  3470
            label: 'Load from URL...'
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  3471
            itemValue: doLoadFromURL
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  3472
          )
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  3473
         (MenuItem
2707
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3474
            label: 'Grab'
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3475
            submenu: 
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3476
           (Menu
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3477
              (
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3478
               (MenuItem
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3479
                  activeHelpKey: fileGrabImageFromScreen
2717
fac7e5156235 changed: #menuFile
Claus Gittinger <cg@exept.de>
parents: 2712
diff changeset
  3480
                  label: 'Grab from Screen Area...'
2707
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3481
                  itemValue: grabScreenImage
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3482
                )
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3483
               (MenuItem
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3484
                  activeHelpKey: fileGrabImageFromScreen
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3485
                  enabled: hasLastGrabScreenArea
2711
4700f54d0040 changed: #menuFile
Claus Gittinger <cg@exept.de>
parents: 2708
diff changeset
  3486
                  label: 'Grab again from same Screen Area'
2707
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3487
                  itemValue: grabScreenImageFromLastArea
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3488
                )
2771
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
                  label: '-'
244f8e53399b changed: #menuFile
Claus Gittinger <cg@exept.de>
parents: 2767
diff changeset
  3491
                )
244f8e53399b changed: #menuFile
Claus Gittinger <cg@exept.de>
parents: 2767
diff changeset
  3492
               (MenuItem
244f8e53399b changed: #menuFile
Claus Gittinger <cg@exept.de>
parents: 2767
diff changeset
  3493
                  activeHelpKey: fileGrabImageFromWindow
244f8e53399b changed: #menuFile
Claus Gittinger <cg@exept.de>
parents: 2767
diff changeset
  3494
                  label: 'Grab from Window...'
244f8e53399b changed: #menuFile
Claus Gittinger <cg@exept.de>
parents: 2767
diff changeset
  3495
                  itemValue: grabWindowImage
244f8e53399b changed: #menuFile
Claus Gittinger <cg@exept.de>
parents: 2767
diff changeset
  3496
                )
3422
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  3497
               (MenuItem
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  3498
                  activeHelpKey: fileGrabFullSreenImage
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  3499
                  label: 'Grab from whole Screen'
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  3500
                  itemValue: grabFullScreenImage
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  3501
                )
2707
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3502
               )
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3503
              nil
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3504
              nil
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3505
            )
2701
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  3506
          )
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  3507
         (MenuItem
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3508
            label: '-'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3509
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3510
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3511
            activeHelpKey: fileSaveMethod
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3512
            enabled: imageIsLoadedAndClassDefined
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3513
            label: 'Save'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3514
            itemValue: doSaveMethod
3374
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  3515
            isVisible: methodSaveAndLoadMenuItemsVisible
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3516
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3517
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3518
            activeHelpKey: fileSaveMethodAs
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3519
            enabled: imageIsLoadedHolder
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3520
            label: 'Save As...'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3521
            itemValue: doSaveMethodAs
3374
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  3522
            isVisible: methodSaveAndLoadMenuItemsVisible
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3523
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3524
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3525
            activeHelpKey: fileSaveAs
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3526
            enabled: imageIsLoadedHolder
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3527
            label: 'Save to File...'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3528
            itemValue: doSaveImageFileAs
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3529
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3530
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3531
            activeHelpKey: fileSaveMaskAs
3411
fd6472405fd0 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3409
diff changeset
  3532
            enabled: hasMaskHolder
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3533
            label: 'Save Mask to File...'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3534
            itemValue: doSaveImageMaskFileAs
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3535
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3536
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3537
            activeHelpKey: fileSaveButtonImageAs
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3538
            enabled: imageIsLoadedHolder
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3539
            label: 'Save as Button to File...'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3540
            itemValue: doSaveButtonImageToFileAs
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
            label: '-'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3544
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3545
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3546
            activeHelpKey: filePrint
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3547
            enabled: imageIsLoadedHolder
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3548
            label: 'Print'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3549
            itemValue: doPrint
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3550
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3551
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3552
            label: '-'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3553
            isVisible: isStandAlone
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3554
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3555
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3556
            activeHelpKey: fileBrowseClass
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3557
            enabled: hasClassDefinedHolder
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3558
            label: 'Browse Class'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3559
            itemValue: doBrowseClass
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3560
            isVisible: isStandAlone
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3561
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3562
         (MenuItem
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3563
            enabled: imageIsLoadedHolder
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3564
            label: 'Inspect Image'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3565
            itemValue: doInspectImage
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3566
            isVisible: isStandAlone
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3567
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3568
         (MenuItem
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3569
            activeHelpKey: fileShowStoreString
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3570
            enabled: imageIsLoadedHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3571
            label: 'Show storeString'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3572
            itemValue: doShowStoreString
3022
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  3573
          )
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  3574
         (MenuItem
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  3575
            activeHelpKey: fileShowStoreString
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  3576
            enabled: imageIsLoadedHolder
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  3577
            label: 'Show Pixel Array Literal String'
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  3578
            itemValue: doShowPixelArrayLiteralString
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3579
          )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3580
         (MenuItem
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3581
            label: '-'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3582
            isVisible: isStandAlone
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3583
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3584
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3585
            activeHelpKey: fileExit
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3586
            label: 'Exit'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3587
            itemValue: closeRequest
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3588
            isVisible: isStandAlone
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3589
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3590
         )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3591
        nil
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3592
        nil
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3593
      )
3411
fd6472405fd0 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3409
diff changeset
  3594
3422
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  3595
    "Modified: / 25-02-2017 / 12:40:30 / cg"
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3596
!
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3597
679
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3598
menuMouseButtonColors
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  3599
    "This resource specification was automatically generated
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  3600
     by the MenuEditor of ST/X."
679
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3601
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  3602
    "Do not manually edit this!! If it is corrupted,
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  3603
     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
  3604
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
     MenuEditor new openOnClass:ImageEditor andSelector:#menuMouseButtonColors
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3607
     (Menu new fromLiteralArrayEncoding:(ImageEditor menuMouseButtonColors)) startUp
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
    <resource: #menu>
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3611
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
       #(#Menu
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3615
          
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3616
           #(
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3617
             #(#MenuItem
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3618
                #label: 'Left Mouse Button'
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3619
                #nameKey: #leftMouseKeyButton
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3620
                #activeHelpKey: #mouseKeyColorMode
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3621
                #enabled: #imageIsLoadedHolder
679
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3622
                #labelImage: #(#ResourceRetriever nil #leftMouseKeyIcon)
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  3623
                #choice: #mouseKeyColorMode
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  3624
                #choiceValue: 1
679
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3625
            )
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3626
             #(#MenuItem
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3627
                #label: 'Right Mouse Button'
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3628
                #nameKey: #rightMouseKeyButton
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3629
                #activeHelpKey: #mouseKeyColorMode
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3630
                #enabled: #imageIsLoadedHolder
679
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3631
                #labelImage: #(#ResourceRetriever nil #rightMouseKeyIcon)
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  3632
                #choice: #mouseKeyColorMode
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  3633
                #choiceValue: 2
679
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3634
            )
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3635
          ) nil
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3636
          nil
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3637
      )
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3638
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3639
    "Modified: / 04-07-2010 / 10:17:37 / cg"
679
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3640
!
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3641
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3642
menuSettings
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3643
    "This resource specification was automatically generated
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3644
     by the MenuEditor of ST/X."
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3645
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3646
    "Do not manually edit this!! If it is corrupted,
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3647
     the MenuEditor may not be able to read the specification."
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3648
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3649
2585
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
     MenuEditor new openOnClass:ImageEditor andSelector:#menuSettings
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3652
     (Menu new fromLiteralArrayEncoding:(ImageEditor menuSettings)) startUp
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
    <resource: #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
    ^ 
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3658
     #(Menu
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3659
        (
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3660
         (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3661
            activeHelpKey: settingsGridMagnification
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3662
            label: 'Grid Magnification Limit...'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3663
            itemValue: doChangeGridMagnification
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3664
            translateLabel: true
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3665
          )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3666
         (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3667
            label: 'Pen'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3668
            translateLabel: true
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3669
            submenu: 
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3670
           (Menu
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3671
              (
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3672
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3673
                  label: '1'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3674
                  translateLabel: true
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3675
                  choice: penWidthHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3676
                  choiceValue: 1
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3677
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3678
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3679
                  label: '5'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3680
                  translateLabel: true
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3681
                  choice: penWidthHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3682
                  choiceValue: 5
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3683
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3684
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3685
                  label: '10'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3686
                  translateLabel: true
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3687
                  choice: penWidthHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3688
                  choiceValue: 10
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3689
                )
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
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3692
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3693
            )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3694
          )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3695
         (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3696
            label: 'Spray'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3697
            translateLabel: true
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3698
            submenu: 
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3699
           (Menu
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3700
              (
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3701
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3702
                  label: '4'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3703
                  translateLabel: true
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3704
                  choice: spraySpotHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3705
                  choiceValue: 4
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3706
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3707
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3708
                  label: '8'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3709
                  translateLabel: true
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3710
                  choice: spraySpotHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3711
                  choiceValue: 8
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3712
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3713
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3714
                  label: '16'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3715
                  translateLabel: true
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3716
                  choice: spraySpotHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3717
                  choiceValue: 16
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3718
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3719
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3720
                  label: '32'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3721
                  translateLabel: true
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3722
                  choice: spraySpotHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3723
                  choiceValue: 32
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3724
                )
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
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3727
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3728
            )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3729
          )
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
        nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3732
        nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3733
      )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3734
!
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3735
400
228524287573 intitial checkin
tz
parents:
diff changeset
  3736
menuToolbar
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  3737
    "This resource specification was automatically generated
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  3738
     by the MenuEditor of ST/X."
400
228524287573 intitial checkin
tz
parents:
diff changeset
  3739
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  3740
    "Do not manually edit this!! If it is corrupted,
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  3741
     the MenuEditor may not be able to read the specification."
400
228524287573 intitial checkin
tz
parents:
diff changeset
  3742
2876
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3743
400
228524287573 intitial checkin
tz
parents:
diff changeset
  3744
    "
228524287573 intitial checkin
tz
parents:
diff changeset
  3745
     MenuEditor new openOnClass:ImageEditor andSelector:#menuToolbar
228524287573 intitial checkin
tz
parents:
diff changeset
  3746
     (Menu new fromLiteralArrayEncoding:(ImageEditor menuToolbar)) startUp
228524287573 intitial checkin
tz
parents:
diff changeset
  3747
    "
228524287573 intitial checkin
tz
parents:
diff changeset
  3748
228524287573 intitial checkin
tz
parents:
diff changeset
  3749
    <resource: #menu>
228524287573 intitial checkin
tz
parents:
diff changeset
  3750
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  3751
    ^ 
1820
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3752
     #(Menu
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3753
        (
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3754
         (MenuItem
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3755
            activeHelpKey: fileNewImage
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3756
            label: 'newImage'
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3757
            itemValue: doNewImage
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3758
            isButton: true
1883
577a267a87cb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
  3759
            labelImage: (ResourceRetriever ToolbarIconLibrary newImageIcon)
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  3760
          )
1820
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3761
         (MenuItem
2876
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3762
            activeHelpKey: fileGrabImageFromScreen
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3763
            label: 'grabScreenImage'
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3764
            itemValue: grabScreenImage
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3765
            isButton: true
2877
1a7cd3e6eea1 changed: #menuToolbar
Claus Gittinger <cg@exept.de>
parents: 2876
diff changeset
  3766
            labelImage: (ResourceRetriever ToolbarIconLibrary snapshot24x24Icon)
2876
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3767
          )
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3768
         (MenuItem
1949
00defdb89630 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1943
diff changeset
  3769
            label: '-'
00defdb89630 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1943
diff changeset
  3770
          )
00defdb89630 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1943
diff changeset
  3771
         (MenuItem
1970
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3772
            activeHelpKey: fileLoadFromClass
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3773
            label: 'loadFromClass'
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3774
            itemValue: doLoadFromClass
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3775
            isButton: true
3374
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  3776
            isVisible: isStandAloneAndMethodSaveAndLoadMenuItemsVisible
1970
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3777
            submenuChannel: menuHistory
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3778
            labelImage: (ResourceRetriever XPToolbarIconLibrary loadImageFromMethodIcon)
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3779
            keepLinkedMenu: true
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3780
          )
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3781
         (MenuItem
2567
903843f8a824 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2556
diff changeset
  3782
            activeHelpKey: fileSaveMethodAs
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3783
            enabled: imageIsLoadedHolder
2567
903843f8a824 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2556
diff changeset
  3784
            label: 'fileSaveMethodAs'
1970
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3785
            itemValue: doSaveMethodAs
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3786
            isButton: true
3374
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  3787
            isVisible: isStandAloneAndMethodSaveAndLoadMenuItemsVisible
1970
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3788
            labelImage: (ResourceRetriever XPToolbarIconLibrary saveImageAsMethodAsIcon)
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3789
          )
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3790
         (MenuItem
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3791
            activeHelpKey: fileSaveMethod
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3792
            enabled: imageIsLoadedHolder
1970
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3793
            label: 'saveAsMethod'
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3794
            itemValue: doSaveMethod
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3795
            isButton: true
3374
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  3796
            isVisible: isNotStandAloneAndMethodSaveAndLoadMenuItemsVisible
2590
9f2cb061d07f changed: #menuToolbar
Claus Gittinger <cg@exept.de>
parents: 2585
diff changeset
  3797
            labelImage: (ResourceRetriever ToolbarIconLibrary saveImageAsMethodIcon)
1970
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3798
          )
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3799
         (MenuItem
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3800
            label: '-'
3374
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  3801
            isVisible: methodSaveAndLoadMenuItemsVisible
1970
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3802
          )
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3803
         (MenuItem
1820
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3804
            activeHelpKey: fileLoadFromFile
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3805
            label: 'loadFromFile'
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3806
            itemValue: doLoadFromFile
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3807
            isButton: true
1884
2c4d13ecd7ed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1883
diff changeset
  3808
            labelImage: (ResourceRetriever ToolbarIconLibrary loadImageFromFileIcon)
1820
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3809
          )
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3810
         (MenuItem
3425
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3811
            activeHelpKey: fileSave
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3812
            enabled: imageIsLoadedHolder
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3813
            label: 'save'
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3814
            itemValue: doSaveImageFile
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3815
            isButton: true
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3816
            isVisible: saveButtonInToolbarVisibleHolder
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3817
            labelImage: (ResourceRetriever ToolbarIconLibrary saveImageIcon)
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3818
          )
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3819
         (MenuItem
1820
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3820
            activeHelpKey: fileSaveAs
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3821
            enabled: imageIsLoadedHolder
1820
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3822
            label: 'saveAsFile'
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3823
            itemValue: doSaveImageFileAs
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3824
            isButton: true
1885
a09ede39c43f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1884
diff changeset
  3825
            labelImage: (ResourceRetriever ToolbarIconLibrary saveImageToFileAsIcon)
1820
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3826
          )
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3827
         (MenuItem
1949
00defdb89630 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1943
diff changeset
  3828
            label: '-'
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  3829
          )
1820
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3830
         (MenuItem
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3831
            activeHelpKey: editUndo
1987
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  3832
            enabled: canUndoHolder
1820
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3833
            label: 'Undo'
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3834
            itemValue: doUndo
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3835
            isButton: true
1883
577a267a87cb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
  3836
            labelImage: (ResourceRetriever ToolbarIconLibrary undoIcon)
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  3837
          )
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3838
         (MenuItem
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3839
            label: '-'
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3840
            isVisible: imageHasImageSequenceHolder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3841
          )
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3842
         (MenuItem
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3843
            activeHelpKey: previousImageInSequence
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3844
            enabled: imageHasPreviousImageHolder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3845
            label: 'Previous Image'
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3846
            itemValue: previousImageInSequence
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3847
            isVisible: imageHasImageSequenceHolder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3848
            labelImage: (ResourceRetriever ToolbarIconLibrary leftArrow24x24Icon)
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3849
          )
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3850
         (MenuItem
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3851
            activeHelpKey: nextImageInSequence
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3852
            enabled: imageHasNextImageHolder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3853
            label: 'Next Image'
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3854
            itemValue: nextImageInSequence
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3855
            isVisible: imageHasImageSequenceHolder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3856
            labelImage: (ResourceRetriever ToolbarIconLibrary rightArrow24x24Icon)
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3857
          )
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3858
         )
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3859
        nil
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3860
        nil
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3861
      )
3425
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3862
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3863
    "Modified: / 26-02-2017 / 23:03:40 / cg"
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3864
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3865
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3866
modeMenu
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3867
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3868
     by the MenuEditor of ST/X."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3869
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3870
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3871
     the MenuEditor may not be able to read the specification."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3872
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3873
1637
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
     MenuEditor new openOnClass:ImageEditor andSelector:#modeMenu
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3876
     (Menu new fromLiteralArrayEncoding:(ImageEditor modeMenu)) startUp
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
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3879
    <resource: #menu>
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3880
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3881
    ^ 
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3882
     #(Menu
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3883
        (
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3884
         (MenuItem
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3885
            activeHelpKey: drawModePoint
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3886
            enabled: imageIsLoadedHolder
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3887
            label: 'Point'
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3888
            labelImage: (ResourceRetriever ImageEditor pointIcon 'Point')
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3889
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3890
            choiceValue: point
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3891
          )
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3892
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3893
            label: '-'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3894
          )
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3895
         (MenuItem
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3896
            activeHelpKey: drawModePoint
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3897
            enabled: imageIsLoadedHolder
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3898
            label: 'Spray'
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3899
            labelImage: (ResourceRetriever ImageEditor sprayIcon 'Spray')
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3900
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3901
            choiceValue: spray
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  3902
          )
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3903
         (MenuItem
3191
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  3904
            activeHelpKey: drawModeSmooth
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  3905
            enabled: imageIsLoadedHolder
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  3906
            label: 'Smooth'
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  3907
            labelImage: (ResourceRetriever ImageEditor smoothIcon 'Smooth')
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  3908
            choice: editMode
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  3909
            choiceValue: smooth
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  3910
          )
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  3911
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3912
            label: '-'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3913
          )
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3914
         (MenuItem
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3915
            activeHelpKey: drawModeBox
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3916
            enabled: imageIsLoadedHolder
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3917
            label: 'Rect'
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3918
            labelImage: (ResourceRetriever ImageEditor rectIcon 'Rect')
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3919
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3920
            choiceValue: box
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  3921
          )
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3922
         (MenuItem
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3923
            activeHelpKey: drawModeFilledBox
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3924
            enabled: imageIsLoadedHolder
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3925
            label: 'Filled Rectangle'
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3926
            labelImage: (ResourceRetriever ImageEditor fillRectIcon 'Filled Rectangle')
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3927
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3928
            choiceValue: filledBox
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  3929
          )
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3930
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3931
            activeHelpKey: drawModeCircle
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3932
            enabled: imageIsLoadedHolder
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3933
            label: 'Circle'
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3934
            labelImage: (ResourceRetriever ImageEditor circleIcon 'Circle')
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3935
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3936
            choiceValue: circle
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  3937
          )
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3938
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3939
            activeHelpKey: drawModeFilledCircle
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3940
            enabled: imageIsLoadedHolder
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3941
            label: 'Filled Circle'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3942
            labelImage: (ResourceRetriever ImageEditor fillCircleIcon 'Filled Circle')
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3943
            choice: editMode
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3944
            choiceValue: filledCircle
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3945
          )
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3946
         (MenuItem
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3947
            activeHelpKey: drawModeFill
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3948
            enabled: imageIsLoadedHolder
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3949
            label: 'Fill'
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3950
            labelImage: (ResourceRetriever ImageEditor fillIcon 'Fill')
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3951
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3952
            choiceValue: fill
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  3953
          )
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3954
         (MenuItem
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3955
            enabled: imageIsLoadedHolder
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3956
            label: 'Gradient Fill'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3957
            isVisible: false
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3958
            submenu: 
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3959
           (Menu
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3960
              (
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3961
               (MenuItem
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3962
                  activeHelpKey: drawModeFill
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3963
                  enabled: imageIsLoadedHolder
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3964
                  label: 'Horizontal'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3965
                  labelImage: (ResourceRetriever ImageEditor fillHorizontalGradientRectIcon 'Horizontal')
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3966
                  choice: editMode
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3967
                  choiceValue: fillHorizontalGradient
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3968
                )
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3969
               (MenuItem
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3970
                  activeHelpKey: drawModeFill
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3971
                  enabled: imageIsLoadedHolder
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3972
                  label: 'Vertical'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3973
                  labelImage: (ResourceRetriever ImageEditor fillVerticalGradientRectIcon 'Vertical')
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3974
                  choice: editMode
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3975
                  choiceValue: fillVerticalGradient
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3976
                )
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3977
               (MenuItem
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3978
                  activeHelpKey: drawModeFill
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3979
                  enabled: imageIsLoadedHolder
3421
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  3980
                  isVisible: false
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3981
                  label: 'Diagonal'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3982
                  labelImage: (ResourceRetriever ImageEditor fillDiagonalGradientRectIcon 'Diagonal')
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3983
                  choice: editMode
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3984
                  choiceValue: fillDiagonalGradient
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3985
                )
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
              nil
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3988
              nil
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3989
            )
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3990
          )
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  3991
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3992
            label: '-'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3993
          )
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3994
         (MenuItem
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3995
            activeHelpKey: drawModeMaskOutsideRectangle
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3996
            enabled: imageHasMaskAndIsNotReadOnlyHolder
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3997
            label: 'Mask Outside Rectangle'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3998
            labelImage: (ResourceRetriever ImageEditor maskOutsideRectangleIcon 'Mask Outside Rectangle')
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3999
            choice: editMode
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4000
            choiceValue: maskOutsideRect
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4001
          )
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4002
         (MenuItem
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4003
            activeHelpKey: drawModeMaskOutsideCircle
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4004
            enabled: imageHasMaskAndIsNotReadOnlyHolder
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4005
            label: 'Mask Outside Circle'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4006
            labelImage: (ResourceRetriever ImageEditor maskOutsideCircleIcon 'Mask Outside Circle')
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4007
            choice: editMode
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4008
            choiceValue: maskOutsideCircle
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
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4011
            label: '-'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4012
          )
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4013
         (MenuItem
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4014
            activeHelpKey: drawModeCopy
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4015
            enabled: imageIsLoadedHolder
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4016
            label: 'Copy'
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4017
            labelImage: (ResourceRetriever ImageEditor copyIcon 'Copy')
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4018
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4019
            choiceValue: copy
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4020
          )
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4021
         (MenuItem
3512
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4022
            activeHelpKey: drawModePasteWithMask
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4023
            enabled: imageIsLoadedHolder
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4024
            label: 'Paste with Mask'
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4025
            labelImage: (ResourceRetriever ImageEditor pasteWithMaskIcon 'Paste with Mask')
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4026
            choice: editMode
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4027
            choiceValue: pasteWithMask
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4028
          )
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4029
         (MenuItem
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4030
            activeHelpKey: drawModePaste
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4031
            enabled: imageIsLoadedHolder
3512
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4032
            label: 'Paste Over'
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4033
            labelImage: (ResourceRetriever ImageEditor pasteIcon 'Paste')
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4034
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4035
            choiceValue: paste
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  4036
          )
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4037
         (MenuItem
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4038
            activeHelpKey: drawModePasteUnder
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4039
            enabled: imageIsLoadedHolder
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4040
            label: 'Paste Under'
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4041
            labelImage: (ResourceRetriever ImageEditor pasteUnderIcon 'Paste Under')
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4042
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4043
            choiceValue: pasteUnder
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  4044
          )
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4045
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4046
            label: '-'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4047
          )
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4048
         (MenuItem
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4049
            activeHelpKey: drawModeSpecial
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4050
            enabled: imageIsLoadedHolder
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4051
            label: 'Special'
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  4052
            labelImage: (ResourceRetriever ImageEditor specialRectangleIcon 'Special')
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4053
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4054
            choiceValue: specialOperation
1411
9daf7add7ea3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1406
diff changeset
  4055
          )
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  4056
         )
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  4057
        nil
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  4058
        nil
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4059
      )
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  4060
3512
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4061
    "Modified: / 07-12-2017 / 15:30:46 / cg"
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4062
!
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4063
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4064
previewMenu
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4065
    "This resource specification was automatically generated
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4066
     by the MenuEditor of ST/X."
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4067
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4068
    "Do not manually edit this!! If it is corrupted,
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4069
     the MenuEditor may not be able to read the specification."
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4070
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4071
1558
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
     MenuEditor new openOnClass:ImageEditor andSelector:#previewMenu
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4074
     (Menu new fromLiteralArrayEncoding:(ImageEditor previewMenu)) startUp
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
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4077
    <resource: #menu>
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4078
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4079
    ^ 
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4080
     #(Menu
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4081
        (
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4082
         (MenuItem
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4083
            label: 'TileMode'
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4084
            indication: tileModeHolder
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: '-'
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4088
          )
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4089
         (MenuItem
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4090
            label: 'Background Color'
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4091
            submenu: 
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4092
           (Menu
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4093
              (
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4094
               (MenuItem
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4095
                  label: 'Gray'
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4096
                  choice: previewBackgroundColorHolder
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4097
                )
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4098
               (MenuItem
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4099
                  label: 'Black'
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4100
                  choice: previewBackgroundColorHolder
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4101
                  choiceValue: black
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4102
                )
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4103
               (MenuItem
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4104
                  label: 'White'
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4105
                  choice: previewBackgroundColorHolder
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4106
                  choiceValue: white
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4107
                )
1774
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: '-'
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4110
                )
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4111
               (MenuItem
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4112
                  label: 'Red'
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4113
                  choice: previewBackgroundColorHolder
1774
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4114
                  choiceValue: red
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4115
                )
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4116
               (MenuItem
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4117
                  label: 'Green'
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4118
                  choice: previewBackgroundColorHolder
1774
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4119
                  choiceValue: green
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4120
                )
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4121
               (MenuItem
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4122
                  label: 'Blue'
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4123
                  choice: previewBackgroundColorHolder
1774
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4124
                  choiceValue: blue
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4125
                )
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4126
               )
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4127
              nil
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4128
              nil
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4129
            )
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4130
          )
3489
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: '-'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4133
          )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4134
         (MenuItem
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4135
            label: 'Magnification'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4136
            submenu: 
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4137
           (Menu
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4138
              (
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4139
               (MenuItem
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4140
                  label: '0.1'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4141
                  choice: previewMagnificationHolder
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4142
                  choiceValue: 0.1
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4143
                )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4144
               (MenuItem
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4145
                  label: '0.25'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4146
                  choice: previewMagnificationHolder
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4147
                  choiceValue: 0.25
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4148
                )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4149
               (MenuItem
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4150
                  label: '0.5'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4151
                  choice: previewMagnificationHolder
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4152
                  choiceValue: 0.5
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4153
                )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4154
               (MenuItem
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4155
                  label: '1'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4156
                  choice: previewMagnificationHolder
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4157
                  choiceValue: 1
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4158
                )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4159
               (MenuItem
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4160
                  label: '2'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4161
                  choice: previewMagnificationHolder
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4162
                  choiceValue: 2
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4163
                )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4164
               (MenuItem
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4165
                  label: '4'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4166
                  choice: previewMagnificationHolder
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4167
                  choiceValue: 4
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: '-'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4171
                )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4172
               (MenuItem
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4173
                  label: 'Choose...'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4174
                  itemValue: changePreviewImageMagnification
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4175
                )
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
              nil
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4178
              nil
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4179
            )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4180
          )
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4181
         )
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4182
        nil
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4183
        nil
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4184
      )
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4185
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4186
    "Modified: / 10-09-2017 / 14:54:41 / cg"
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4187
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4188
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4189
toolsMenuToolbar
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4190
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4191
     by the MenuEditor of ST/X."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4192
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4193
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4194
     the MenuEditor may not be able to read the specification."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4195
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4196
1637
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
     MenuEditor new openOnClass:ImageEditor andSelector:#toolsMenuToolbar
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4199
     (Menu new fromLiteralArrayEncoding:(ImageEditor toolsMenuToolbar)) startUp
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
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4202
    <resource: #menu>
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4203
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4204
    ^ 
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4205
     #(Menu
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4206
        (
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4207
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4208
            activeHelpKey: drawModePoint
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  4209
            enabled: canDrawPointsHolder
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4210
            label: 'Point'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4211
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4212
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4213
            labelImage: (ResourceRetriever ImageEditor pointIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4214
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4215
            choiceValue: point
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4216
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4217
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4218
            activeHelpKey: drawModeSpray
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  4219
            enabled: canSprayHolder
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4220
            label: 'Spray'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4221
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4222
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4223
            labelImage: (ResourceRetriever ImageEditor sprayIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4224
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4225
            choiceValue: spray
2375
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  4226
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4227
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4228
            activeHelpKey: drawModeBox
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  4229
            enabled: canDrawRectsHolder
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4230
            label: 'Rect'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4231
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4232
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4233
            labelImage: (ResourceRetriever ImageEditor rectIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4234
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4235
            choiceValue: box
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4236
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4237
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4238
            activeHelpKey: drawModeFilledBox
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  4239
            enabled: canFillRectsHolder
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4240
            label: 'FillRect'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4241
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4242
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4243
            labelImage: (ResourceRetriever ImageEditor fillRectIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4244
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4245
            choiceValue: filledBox
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4246
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4247
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4248
            activeHelpKey: drawModeCircle
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  4249
            enabled: canDrawCirclesHolder
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4250
            label: 'Circle'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4251
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4252
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4253
            labelImage: (ResourceRetriever ImageEditor circleIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4254
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4255
            choiceValue: circle
2375
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  4256
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4257
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4258
            activeHelpKey: drawModeFill
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  4259
            enabled: canFloodFillHolder
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4260
            label: 'Fill'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4261
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4262
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4263
            labelImage: (ResourceRetriever ImageEditor fillIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4264
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4265
            choiceValue: fill
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4266
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4267
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4268
            activeHelpKey: drawModeCopy
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4269
            enabled: imageIsLoadedHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4270
            label: 'Copy'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4271
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4272
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4273
            labelImage: (ResourceRetriever ImageEditor copyIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4274
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4275
            choiceValue: copy
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4276
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4277
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4278
            activeHelpKey: drawModePasteWithMask
3377
6177e2e703fb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3376
diff changeset
  4279
            enabled: imageIsLoadedAndNotReadonlyHolder
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4280
            label: 'Paste With Mask'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4281
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4282
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4283
            labelImage: (ResourceRetriever ImageEditor pasteWithMaskIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4284
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4285
            choiceValue: pasteWithMask
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4286
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4287
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4288
            activeHelpKey: drawModePaste
3377
6177e2e703fb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3376
diff changeset
  4289
            enabled: imageIsLoadedAndNotReadonlyHolder
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4290
            label: 'Paste'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4291
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4292
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4293
            labelImage: (ResourceRetriever ImageEditor pasteIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4294
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4295
            choiceValue: paste
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4296
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4297
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4298
            activeHelpKey: drawModePasteUnder
3377
6177e2e703fb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3376
diff changeset
  4299
            enabled: imageIsLoadedAndNotReadonlyHolder
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4300
            label: 'Paste Under'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4301
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4302
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4303
            labelImage: (ResourceRetriever ImageEditor pasteUnderIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4304
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4305
            choiceValue: pasteUnder
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4306
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4307
         (MenuItem
3464
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4308
            activeHelpKey: drawModeCropSubImage 
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4309
            enabled: imageIsLoadedHolder
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4310
            label: 'Crop SubImage'
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4311
            translateLabel: true
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4312
            isButton: true
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4313
            labelImage: (ResourceRetriever ImageEditor cropSubImageIcon)
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4314
            choice: editMode
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4315
            choiceValue: cropSubImage
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4316
          )
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4317
         (MenuItem
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4318
            activeHelpKey: drawModeSpecial
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4319
            enabled: imageIsLoadedHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4320
            label: 'Special'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4321
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4322
            isButton: true
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  4323
            labelImage: (ResourceRetriever ImageEditor specialRectangleIcon)
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4324
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4325
            choiceValue: specialOperation
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4326
          )
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4327
         )
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4328
        nil
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4329
        nil
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4330
      )
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  4331
3464
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4332
    "Modified: / 24-08-2017 / 20:53:02 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4333
! !
228524287573 intitial checkin
tz
parents:
diff changeset
  4334
1842
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4335
!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
  4336
1900
41ba86fb1087 cleanup
Claus Gittinger <cg@exept.de>
parents: 1899
diff changeset
  4337
colorTableColumns
1842
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4338
    "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
  4339
     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
  4340
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4341
    "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
  4342
     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
  4343
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4344
    "
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  4345
     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
  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
    <resource: #tableColumns>
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4349
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4350
    ^#(
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4351
      (DataSetColumnSpec
2174
7beca4d9c93a color-double-click
Claus Gittinger <cg@exept.de>
parents: 2155
diff changeset
  4352
         activeHelpKey: ''
1842
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4353
         labelButtonType: Button
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4354
         rendererType: rowSelector
2712
cddda688a9f2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2711
diff changeset
  4355
         backgroundSelector: theColorItself:
cddda688a9f2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2711
diff changeset
  4356
         selectedBackgroundSelector: theColorItself:
1842
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4357
         isResizeable: false
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4358
       )
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4359
      (DataSetColumnSpec
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4360
         label: 'R'
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4361
         labelAlignment: left
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4362
         labelButtonType: Button
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4363
         columnAlignment: right
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4364
         editorType: InputField
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4365
         type: number
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4366
         model: redFromColor:
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4367
         writeSelector: redAtColor:put:
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4368
         selectSelector: canSelectRedInColor:
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4369
       )
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4370
      (DataSetColumnSpec
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4371
         label: 'G'
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4372
         labelAlignment: left
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4373
         labelButtonType: Button
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4374
         columnAlignment: right
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4375
         editorType: InputField
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4376
         type: number
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4377
         model: greenFromColor:
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4378
         writeSelector: greenAtColor:put:
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4379
         selectSelector: canSelectGreenInColor:
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4380
       )
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4381
      (DataSetColumnSpec
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4382
         label: 'B'
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4383
         labelAlignment: left
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4384
         labelButtonType: Button
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4385
         columnAlignment: right
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4386
         editorType: InputField
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4387
         type: number
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4388
         model: blueFromColor:
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4389
         writeSelector: blueAtColor:put:
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4390
         selectSelector: canSelectBlueInColor:
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4391
       )
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4392
      )
2174
7beca4d9c93a color-double-click
Claus Gittinger <cg@exept.de>
parents: 2155
diff changeset
  4393
7beca4d9c93a color-double-click
Claus Gittinger <cg@exept.de>
parents: 2155
diff changeset
  4394
    "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
  4395
! !
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4396
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4397
!ImageEditor methodsFor:'accessing'!
228524287573 intitial checkin
tz
parents:
diff changeset
  4398
228524287573 intitial checkin
tz
parents:
diff changeset
  4399
image
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  4400
    "returns the current editing image"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4401
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  4402
    ^ imageEditView image
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4403
!
228524287573 intitial checkin
tz
parents:
diff changeset
  4404
228524287573 intitial checkin
tz
parents:
diff changeset
  4405
postOpenAction: anAction
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  4406
   "sets an action which is evaluated after opening"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4407
228524287573 intitial checkin
tz
parents:
diff changeset
  4408
    postOpenAction := anAction
1381
30fedb56e7db *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1380
diff changeset
  4409
!
30fedb56e7db *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1380
diff changeset
  4410
30fedb56e7db *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1380
diff changeset
  4411
resourceClass:aClass
30fedb56e7db *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1380
diff changeset
  4412
    imageEditView resourceClass:aClass
3375
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  4413
!
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  4414
3379
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  4415
savedFile
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  4416
    "if user did a save to file, return the filename.
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  4417
     Otherwise, this returns nil"
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  4418
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  4419
    ^ savedFile
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  4420
!
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  4421
3375
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  4422
savedImage
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  4423
    "if user did a save, return what was saved last.
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  4424
     Otherwise, this returns nil"
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  4425
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  4426
    ^ savedImage
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4427
! !
228524287573 intitial checkin
tz
parents:
diff changeset
  4428
2767
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4429
!ImageEditor methodsFor:'accessing-behavior'!
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4430
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4431
allowedToChangeImageDimension
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4432
    "used to edit an existing image's contents only (Expecco)"
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4433
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4434
    ^ self allowedToChangeImageDimensionAndDepth
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4435
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4436
    "Created: / 16-02-2017 / 01:59:21 / cg"
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4437
!
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4438
2767
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4439
allowedToChangeImageDimensionAndDepth
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4440
    "used to edit an existing image's contents only (Expecco)"
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4441
3378
7225434f9d46 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3377
diff changeset
  4442
    self readOnly ifTrue:[^ false].
2767
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4443
    ^ allowedToChangeImageDimensionAndDepth ? true
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4444
!
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
    "used to edit an existing image's contents only (Expecco)"
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4448
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4449
    allowedToChangeImageDimensionAndDepth := aBoolean
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4450
! !
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4451
1398
284781677ae1 category changes
Claus Gittinger <cg@exept.de>
parents: 1393
diff changeset
  4452
!ImageEditor methodsFor:'accessing-views'!
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4453
915
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4454
colorDataSetView
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4455
    "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
  4456
1597
b670ad8c30e1 builder componentAt: -> self componentAt:
Claus Gittinger <cg@exept.de>
parents: 1583
diff changeset
  4457
    ^(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
  4458
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4459
    "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
  4460
!
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4461
487
6c336c183330 info bar as subSpec to class ToolApplicationModel moved
tz
parents: 475
diff changeset
  4462
coordLabel
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  4463
    "returns the view the coord label"
487
6c336c183330 info bar as subSpec to class ToolApplicationModel moved
tz
parents: 475
diff changeset
  4464
1597
b670ad8c30e1 builder componentAt: -> self componentAt:
Claus Gittinger <cg@exept.de>
parents: 1583
diff changeset
  4465
    ^self componentAt: #coordLabel
487
6c336c183330 info bar as subSpec to class ToolApplicationModel moved
tz
parents: 475
diff changeset
  4466
!
6c336c183330 info bar as subSpec to class ToolApplicationModel moved
tz
parents: 475
diff changeset
  4467
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4468
imageEditView
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  4469
    "returns the editor view of the image"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4470
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  4471
    imageEditView isNil ifTrue:[
1597
b670ad8c30e1 builder componentAt: -> self componentAt:
Claus Gittinger <cg@exept.de>
parents: 1583
diff changeset
  4472
        imageEditView := (self componentAt: #imageEditView) scrolledView.
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  4473
        imageEditView addDependent:self.
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  4474
    ].
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  4475
    ^ imageEditView
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  4476
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  4477
    "Modified: / 10.2.2000 / 23:19:20 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4478
!
228524287573 intitial checkin
tz
parents:
diff changeset
  4479
228524287573 intitial checkin
tz
parents:
diff changeset
  4480
imagePreView
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  4481
    "returns the preview of the image"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4482
2339
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  4483
    |imagePreViewSubViews|
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  4484
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  4485
    imagePreViewSubViews := (self componentAt: #imagePreView) subViews.
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  4486
2043
a816ef2ce516 #imagePreView
sr
parents: 2042
diff changeset
  4487
    "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
  4488
    imagePreViewSubViews isEmptyOrNil ifTrue:[
2043
a816ef2ce516 #imagePreView
sr
parents: 2042
diff changeset
  4489
        ^ nil
a816ef2ce516 #imagePreView
sr
parents: 2042
diff changeset
  4490
    ].
a816ef2ce516 #imagePreView
sr
parents: 2042
diff changeset
  4491
2339
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  4492
    ^ imagePreViewSubViews first 
475
0d5a50fe59f4 default value of info label set
tz
parents: 468
diff changeset
  4493
! !
0d5a50fe59f4 default value of info label set
tz
parents: 468
diff changeset
  4494
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4495
!ImageEditor methodsFor:'actions'!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4496
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4497
applyCropAction
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4498
    self cropLeft:(self cropLeftAmount value) right:(self cropRightAmount value) 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4499
         top:(self cropTopAmount value) bottom:(self cropBottomAmount value)
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
    "Created: / 17-02-2017 / 14:34:35 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4502
    "Modified: / 19-02-2017 / 15:11:41 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4503
!
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
cropBottomNow
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4506
    self cropLeft:0 right:0 top:0 bottom:(self cropBottomAmount value)
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
    "Created: / 19-02-2017 / 15:07:36 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4509
!
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
cropLeft:left right:right top:top bottom:bottom
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4512
    |img|
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
    img := imageEditView image.
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4515
    img isNil ifTrue:[^ self].
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4516
    
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4517
    true "firstChange" ifTrue:[
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4518
        imageEditView makeUndo.
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4519
        "/ firstChange := false.
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4520
    ].
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4521
    imageEditView
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4522
        makeSubImageX:left y:top 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4523
        width:(img width - left - right)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4524
        height:(img height - top - bottom).
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
    self updateImagePreView.
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4527
    self updateInfoLabel
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
    "Created: / 19-02-2017 / 15:07:58 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4530
!
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
cropLeftNow
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4533
    self cropLeft:(self cropLeftAmount value) right:0 top:0 bottom:0
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
    "Created: / 19-02-2017 / 15:08:06 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4536
!
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
cropRightNow
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4539
    self cropLeft:0 right:(self cropRightAmount value) top:0 bottom:0
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
    "Created: / 19-02-2017 / 15:08:12 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4542
!
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
cropTopNow
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4545
    self cropLeft:0 right:0 top:(self cropTopAmount value) bottom:0
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4546
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4547
    "Created: / 19-02-2017 / 15:08:29 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4548
! !
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4549
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4550
!ImageEditor methodsFor:'aspects'!
228524287573 intitial checkin
tz
parents:
diff changeset
  4551
928
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  4552
activityInfoHolder
1987
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  4553
    ^ self infoLabelHolder
928
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  4554
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  4555
    "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
  4556
!
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  4557
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4558
alphaHolder
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4559
    |holder|
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4560
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4561
    (holder := builder bindingAt:#alphaHolder) isNil ifTrue:[
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4562
        builder aspectAt:#alphaHolder put:(holder := 100 asValue).
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4563
        holder onChangeEvaluate:[ imageEditView drawingAlpha:holder value ].
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4564
    ].
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4565
    ^ holder
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
    "Created: / 05-09-2017 / 00:38:14 / cg"
3488
e9655ba452c7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3487
diff changeset
  4568
    "Modified: / 05-09-2017 / 10:47:01 / cg"
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4569
!
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
alphaText
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4572
    ^ 'alpha:'
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
    "Created: / 05-09-2017 / 00:32:55 / cg"
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4575
!
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
alphaVisibleHolder
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4578
    |holder|
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 := builder bindingAt:#alphaVisibleHolder) isNil ifTrue:[
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4581
        builder aspectAt:#alphaVisibleHolder put:(holder := false asValue).
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4582
    ].
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4583
    ^ holder
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4584
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4585
    "Created: / 05-09-2017 / 00:35:36 / cg"
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4586
!
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4587
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4588
canAddColorToColormap
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4589
    |img|
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4590
    
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4591
    img := self image.
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4592
    img isNil ifTrue:[^ false].
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4593
    img photometric == #blackIs0 ifTrue:[^ false].
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4594
    img photometric == #whiteIs0 ifTrue:[^ false].
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4595
    ^ true
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
    "Created: / 31-08-2017 / 18:32:27 / cg"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4598
!
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
canAddColorToColormapHolder
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4601
    ^ [self canAddColorToColormap]
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
    "Created: / 31-08-2017 / 18:32:40 / cg"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4604
!
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
canChangeColorInColormap
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4607
    |img|
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4608
    
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4609
    img := self image.
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4610
    img isNil ifTrue:[^ false].
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4611
    img photometric == #palette ifFalse:[^ false].
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4612
    ^ true
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
    "Created: / 31-08-2017 / 18:34:12 / cg"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4615
!
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
canChangeColorInColormapHolder
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4618
    ^ [self canChangeColorInColormap]
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4619
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4620
    "Created: / 31-08-2017 / 18:34:18 / cg"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4621
!
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4622
3378
7225434f9d46 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3377
diff changeset
  4623
canResizeImage
7225434f9d46 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3377
diff changeset
  4624
    ^ self imageIsLoadedAndNotReadonlyHolder
7225434f9d46 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3377
diff changeset
  4625
!
7225434f9d46 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3377
diff changeset
  4626
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4627
colorBoxVisibleHolder
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4628
    |holder|
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 := builder bindingAt:#colorBoxVisibleHolder) isNil ifTrue:[
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4631
        builder aspectAt:#colorBoxVisibleHolder put:(holder := true asValue).
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4632
    ].
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4633
    ^ holder
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4634
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4635
    "Created: / 03-02-2017 / 11:20:21 / cg"
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4636
!
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4637
915
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4638
colorColumnAdaptor
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4639
    ^ self
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4640
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4641
    "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
  4642
!
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4643
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4644
colorCropTabLabelList
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4645
    ^ resources array:(self colorCropTabSpecList collect:#first)
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
    "Created: / 19-02-2017 / 14:58:25 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4648
!
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
colorCropTabSelectionIndexHolder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4651
    |holder|
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4652
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4653
    (holder := builder bindingAt:#colorCropTabSelectionIndexHolder) isNil ifTrue:[
3415
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4654
        builder aspectAt:#colorCropTabSelectionIndexHolder put:(holder := self defaultEditTabIndex asValue).
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4655
        holder onChangeSend:#colorCropTabSelectionIndexChanged to:self.
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4656
    ].
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4657
    ^ holder
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
    "Created: / 19-02-2017 / 14:59:11 / cg"
3415
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4660
    "Modified: / 19-02-2017 / 23:33:39 / cg"
3413
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
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4663
colorCropTabSpecList
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4664
    ^ #( 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4665
        ('Colors' colors)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4666
        ('Crop'   crop)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4667
        ('Fill'   fill)
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
    "Created: / 19-02-2017 / 15:34:33 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4671
!
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
colorCropTabSymbolList
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4674
    ^ self colorCropTabSpecList collect:#second
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
    "Created: / 19-02-2017 / 15:34:54 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4677
!
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
cropBottomAmount
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4680
    ^ builder valueAspectFor:'cropBottomAmount' initialValue:1
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4681
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4682
    "Created: / 19-02-2017 / 15:09:09 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4683
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4684
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4685
cropBoxIsDialog
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4686
    ^ false
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
    "Created: / 03-02-2017 / 11:23:50 / cg"
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4689
    "Modified: / 19-02-2017 / 15:24:07 / cg"
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4690
!
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4691
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4692
cropBoxIsNotDialog
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4693
    ^ self cropBoxIsDialog not
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4694
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4695
    "Created: / 17-02-2017 / 14:38:04 / cg"
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4696
!
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4697
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4698
cropBoxVisibleHolder
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4699
    |holder|
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 := builder bindingAt:#cropBoxVisibleHolder) isNil ifTrue:[
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4702
        builder aspectAt:#cropBoxVisibleHolder put:(holder := false asValue).
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4703
    ].
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4704
    ^ holder
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4705
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4706
    "Created: / 03-02-2017 / 11:20:13 / cg"
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4707
!
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4708
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4709
cropLeftAmount
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4710
    ^ builder valueAspectFor:'cropLeftAmount' initialValue:1
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
    "Created: / 19-02-2017 / 15:09:23 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4713
!
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
cropRightAmount
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4716
    ^ builder valueAspectFor:'cropRightAmount' initialValue:1
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
    "Created: / 19-02-2017 / 15:09:29 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4719
!
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
cropTopAmount
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4722
    ^ builder valueAspectFor:'cropTopAmount' initialValue:1
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4723
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4724
    "Created: / 19-02-2017 / 15:09:35 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4725
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4726
3415
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4727
defaultEditTabIndex
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4728
    "the default tab to show in the color/crop/fill tablist"
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4729
    
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4730
    ^ 1
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4731
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4732
    "Created: / 19-02-2017 / 23:34:12 / cg"
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4733
!
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4734
3421
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4735
drawingColor1Holder
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4736
    "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
  4737
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4738
    |holder|
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 := builder bindingAt:#drawingColor1Holder) isNil ifTrue:[
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4741
        builder aspectAt:#drawingColor1Holder put:(holder := IndirectValue new)
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4742
    ].
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4743
    ^ holder
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
    "Created: / 23-02-2017 / 10:18:25 / cg"
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4746
!
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
drawingColor2Holder
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4749
    "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
  4750
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4751
    |holder|
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 := builder bindingAt:#drawingColor2Holder) isNil ifTrue:[
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4754
        builder aspectAt:#drawingColor2Holder put:(holder := IndirectValue new)
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4755
    ].
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4756
    ^ holder
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4757
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4758
    "Created: / 23-02-2017 / 10:18:33 / cg"
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4759
!
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4760
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4761
floodFillBoxVisibleHolder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4762
    |holder|
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 := builder bindingAt:#floodFillBoxVisibleHolder) isNil ifTrue:[
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4765
        builder aspectAt:#floodFillBoxVisibleHolder put:(holder := false asValue).
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4766
    ].
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4767
    ^ holder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4768
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4769
    "Created: / 19-02-2017 / 15:28:40 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4770
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4771
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4772
floodFillMaxHueError
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4773
    |holder|
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4774
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4775
    (holder := builder bindingAt:#floodFillMaxHueError) isNil ifTrue:[
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4776
        builder aspectAt:#floodFillMaxHueError put:(holder := 0 asValue).
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4777
        holder onChangeEvaluate:[ imageEditView floodFillMaxHueError:holder value ].
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4778
    ].
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4779
    ^ holder
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
    "Created: / 17-02-2017 / 15:19:17 / cg"
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4782
!
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
floodFillMaxLightError
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4785
    |holder|
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4786
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4787
    (holder := builder bindingAt:#floodFillMaxLightError) isNil ifTrue:[
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4788
        builder aspectAt:#floodFillMaxLightError put:(holder := 0 asValue).
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4789
        holder onChangeEvaluate:[ imageEditView floodFillMaxLightError:holder value ].
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4790
    ].
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4791
    ^ holder
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4792
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4793
    "Created: / 17-02-2017 / 15:19:11 / cg"
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4794
!
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4795
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4796
hasClassAndSelectorDefinedHolder
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  4797
    ^ [
1965
1d2b7893ae89 some code cleanup (resourceClass was actually its name)
Claus Gittinger <cg@exept.de>
parents: 1962
diff changeset
  4798
        |cls|
1d2b7893ae89 some code cleanup (resourceClass was actually its name)
Claus Gittinger <cg@exept.de>
parents: 1962
diff changeset
  4799
1d2b7893ae89 some code cleanup (resourceClass was actually its name)
Claus Gittinger <cg@exept.de>
parents: 1962
diff changeset
  4800
        (cls := imageEditView resourceClass) notNil
1d2b7893ae89 some code cleanup (resourceClass was actually its name)
Claus Gittinger <cg@exept.de>
parents: 1962
diff changeset
  4801
        and:[imageEditView resourceSelector notNil]
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  4802
      ]
933
f090206aadff disable some menu items if no class/selector is defined
Claus Gittinger <cg@exept.de>
parents: 932
diff changeset
  4803
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4804
    "Created: / 04-07-2010 / 10:11:10 / cg"
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4805
!
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4806
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4807
hasClassDefinedHolder
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  4808
    ^ [
1965
1d2b7893ae89 some code cleanup (resourceClass was actually its name)
Claus Gittinger <cg@exept.de>
parents: 1962
diff changeset
  4809
        imageEditView resourceClass notNil
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  4810
      ]
933
f090206aadff disable some menu items if no class/selector is defined
Claus Gittinger <cg@exept.de>
parents: 932
diff changeset
  4811
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4812
    "Created: / 04-07-2010 / 10:11:47 / cg"
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4813
!
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
hasColorSelectedHolder
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4816
    ^ [ self selectedColors value notEmptyOrNil "self selectedColorIndexOrNil notNil" ]
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4817
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4818
    "Created: / 04-07-2010 / 10:12:22 / cg"
2651
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  4819
!
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  4820
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  4821
hasColormap
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4822
    "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
  4823
    
3421
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4824
    |img|
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4825
    
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4826
    ^ (img := self image) notNil 
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4827
        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
  4828
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4829
    "Created: / 30-09-1998 / 23:53:55 / cg"
3421
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4830
    "Modified: / 23-02-2017 / 09:57:45 / cg"
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4831
    "Modified (comment): / 31-08-2017 / 18:36:08 / cg"
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  4832
!
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  4833
2651
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  4834
hasColormapAndColorSelected
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  4835
    ^ [ self hasColormap and:[self hasColorSelectedHolder value]]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  4836
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  4837
    "Modified: / 31-08-2017 / 14:08:20 / cg"
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4838
!
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4839
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4840
hasColormapAndSingleColorSelected
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4841
    ^ self hasColormapHolder value and:[self hasSingleColorSelectedHolder value]
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
    "Modified: / 31-08-2017 / 18:44:49 / cg"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4844
!
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
hasColormapAndSingleColorSelectedHolder
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4847
    ^ [ self hasColormapAndSingleColorSelected value ]
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
    "Created: / 31-08-2017 / 18:44:36 / cg"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4850
!
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
hasColormapAndSingleWritableColorSelectedHolder
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4853
    ^ [ self hasColormapAndSingleColorSelected and:[self canChangeColorInColormap ]]
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4854
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4855
    "Created: / 31-08-2017 / 18:42:46 / cg"
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4856
!
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4857
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4858
hasColormapHolder
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4859
    "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
  4860
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4861
    ^ [self hasColormap]
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
    "Created: / 04-07-2010 / 10:13:05 / cg"
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4864
    "Modified (comment): / 31-08-2017 / 18:36:47 / cg"
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4865
!
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4866
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4867
hasSingleColorSelectedHolder
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4868
    ^ [ self selectedColors value size == 1 "self selectedColorIndexOrNil notNil" ]
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4869
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4870
    "Created: / 04-07-2010 / 10:12:22 / cg"
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4871
!
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4872
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  4873
hasWritableColorSelectedHolder
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  4874
    ^ [ self hasSingleColorSelectedHolder value and:[self canChangeColorInColormap ]]
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  4875
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  4876
    "Created: / 08-10-2017 / 14:45:11 / cg"
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  4877
!
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  4878
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4879
imageHasColormap
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4880
    "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
  4881
    
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4882
    |img|
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
    ^ (img := self image) notNil 
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4885
        and:[img colorMap notNil ]
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
    "Created: / 31-08-2017 / 18:36:25 / cg"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4888
!
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
imageHasColormapHolder
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4891
    ^ [self imageHasColormap]
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4892
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4893
    "Created: / 31-08-2017 / 18:36:42 / cg"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4894
!
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4895
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4896
imageHasImageSequence
3080
918f79c8b30d class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3066
diff changeset
  4897
    |img|
918f79c8b30d class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3066
diff changeset
  4898
918f79c8b30d class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3066
diff changeset
  4899
    ^ (img := self image) notNil and:[img imageSequence notNil]
2812
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
    "Created: / 21-10-2010 / 14:35:45 / cg"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4902
!
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
imageHasImageSequenceHolder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4905
    |holder|
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4906
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4907
    (holder := builder bindingAt:#imageHasImageSequenceHolder) isNil ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4908
        builder aspectAt:#imageHasImageSequenceHolder put:(holder := false asValue).
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4909
        holder value:(self imageHasImageSequence).    
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4910
    ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4911
    ^ holder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4912
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4913
    "Modified: / 21-10-2010 / 14:36:57 / cg"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4914
!
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4915
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4916
imageHasMaskAndIsNotReadOnlyHolder
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4917
    "returns whether an image is loaded and editable as value holder"
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4918
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4919
    ^ BlockValue
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4920
        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
  4921
        argument:(self imageIsLoadedHolder)
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4922
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4923
    "Created: / 16-02-2017 / 12:17:25 / cg"
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4924
!
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4925
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4926
imageHasNextImage
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4927
    ^ self imageHasImageSequence and:[ (imageSeqNr ? 1) < self image imageSequence size ]
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4928
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4929
    "Created: / 21-10-2010 / 14:37:10 / cg"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4930
!
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4931
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4932
imageHasNextImageHolder
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4933
    |holder|
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4934
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4935
    (holder := builder bindingAt:#imageHasNextImageHolder) isNil ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4936
        builder aspectAt:#imageHasNextImageHolder put:(holder := false asValue).
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4937
        holder value:(self imageHasNextImage).    
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4938
    ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4939
    ^ holder
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
    "Modified: / 21-10-2010 / 14:37:40 / cg"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4942
!
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
imageHasPreviousImage
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4945
    ^ self imageHasImageSequence and:[ (imageSeqNr ? 1) > 1 ]
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
    "Created: / 21-10-2010 / 14:37:21 / cg"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4948
!
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
imageHasPreviousImageHolder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4951
    |holder|
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4952
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4953
    (holder := builder bindingAt:#imageHasPreviousImageHolder) isNil ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4954
        builder aspectAt:#imageHasPreviousImageHolder put:(holder := false asValue).
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4955
        holder value:(self imageHasPreviousImage).    
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4956
    ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4957
    ^ holder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4958
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  4959
    "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
  4960
!
9787c42843c2 allow display and extract from image sequences (gif anims)
Claus Gittinger <cg@exept.de>
parents: 1377
diff changeset
  4961
928
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  4962
imageInfoHolder
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  4963
    |holder|
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4964
928
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  4965
    (holder := builder bindingAt:#imageInfoHolder) isNil ifTrue:[
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  4966
        builder aspectAt:#imageInfoHolder put:(holder :=  '' asValue).
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  4967
    ].
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  4968
    ^ holder
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  4969
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4970
    "Modified: / 04-07-2010 / 10:15:14 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4971
!
228524287573 intitial checkin
tz
parents:
diff changeset
  4972
228524287573 intitial checkin
tz
parents:
diff changeset
  4973
listOfColors
1896
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  4974
    "returns the list of colors"
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  4975
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  4976
    |list|
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  4977
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  4978
    (list := builder bindingAt:#listOfColors) isNil ifTrue:[
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  4979
        builder aspectAt:#listOfColors put:(list :=  List new).
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  4980
        list addDependent:self.
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4981
    ].
1896
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  4982
    ^ list
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4983
!
228524287573 intitial checkin
tz
parents:
diff changeset
  4984
1987
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  4985
magnificationHolder
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  4986
    "returns current magnification of the image as an AspectAdaptor"
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  4987
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  4988
    |holder|
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  4989
    (holder := builder bindingAt:#valueOfMagnification) isNil ifTrue:[
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  4990
        builder aspectAt:#valueOfMagnification put:(
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  4991
        holder := AspectAdaptor new subject:self; forAspect:#magnification)
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  4992
    ].
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  4993
    ^ holder
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  4994
!
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  4995
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4996
penWidthHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4997
    |holder|
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4998
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4999
    (holder := builder bindingAt:#penWidthHolder) isNil ifTrue:[
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5000
        builder aspectAt:#penWidthHolder put:(holder := imageEditView penWidth asValue).
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5001
        holder onChangeSend:#penWidthHolderChanged to:self.
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5002
    ].
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5003
    ^ holder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5004
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5005
    "Created: / 15-02-2012 / 22:30:58 / cg"
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5006
!
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5007
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  5008
previewBackgroundColorHolder
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5009
    |holder|
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  5010
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5011
    (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
  5012
        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
  5013
        holder addDependent:self.
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5014
    ].
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5015
    ^ holder
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  5016
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  5017
    "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
  5018
!
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5019
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5020
previewMagnificationHolder
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5021
    |holder|
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5022
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5023
    (holder := builder bindingAt:#previewMagnificationHolder) isNil ifTrue:[
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5024
        builder aspectAt:#previewMagnificationHolder put:(holder := 1 asValue).
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5025
        holder addDependent:self.
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5026
    ].
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5027
    ^ holder
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5028
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5029
    "Created: / 10-09-2017 / 14:10:07 / cg"
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5030
!
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5031
3377
6177e2e703fb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3376
diff changeset
  5032
readOnly
6177e2e703fb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3376
diff changeset
  5033
    ^ false
6177e2e703fb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3376
diff changeset
  5034
!
6177e2e703fb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3376
diff changeset
  5035
3425
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  5036
saveButtonInToolbarVisibleHolder
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  5037
    ^ false
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  5038
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  5039
    "Created: / 26-02-2017 / 22:58:41 / cg"
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  5040
!
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  5041
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5042
selectedColors
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5043
    "returns a valueHolder for the current set of selected colors."
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5044
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5045
    |holder|
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5046
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5047
    (holder := builder bindingAt:#selectedColors) isNil ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5048
        builder aspectAt:#selectedColors put:(holder := nil asValue).
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5049
        holder onChangeSend:#selectedColorsChanged to:self.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5050
    ].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5051
    ^ holder
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5052
!
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5053
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5054
selectionOfColor
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  5055
    "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
  5056
     Here, an AspectAdaptor which accesses selectedColorIndex is returned."
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5057
228524287573 intitial checkin
tz
parents:
diff changeset
  5058
    |holder|
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  5059
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5060
    (holder := builder bindingAt:#selectionOfColor) isNil ifTrue:[
228524287573 intitial checkin
tz
parents:
diff changeset
  5061
        builder aspectAt:#selectionOfColor put:(
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  5062
        holder := AspectAdaptor new subject:self; forAspect:#selectedColorIndex ).
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5063
    ].
228524287573 intitial checkin
tz
parents:
diff changeset
  5064
    ^ holder
228524287573 intitial checkin
tz
parents:
diff changeset
  5065
!
228524287573 intitial checkin
tz
parents:
diff changeset
  5066
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5067
spraySpotHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5068
    |holder|
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5069
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5070
    (holder := builder bindingAt:#spraySpotHolder) isNil ifTrue:[
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5071
        builder aspectAt:#spraySpotHolder put:(holder := imageEditView spraySpot asValue).
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5072
        holder onChangeSend:#spraySpotHolderChanged to:self.
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5073
    ].
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5074
    ^ holder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5075
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5076
    "Created: / 15-02-2012 / 22:36:38 / cg"
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5077
!
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5078
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5079
tileModeHolder
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5080
    |holder|
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5081
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5082
    (holder := builder bindingAt:#tileModeHolder) isNil ifTrue:[
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5083
        builder aspectAt:#tileModeHolder put:(holder := false asValue).
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5084
        holder addDependent:self.
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5085
    ].
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5086
    ^ holder
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5087
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5088
    "Modified: / 21-10-2010 / 14:35:24 / cg"
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5089
!
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5090
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5091
valueOfMagnification
2308
60722577a10a Mark obsolete methods
Stefan Vogel <sv@exept.de>
parents: 2272
diff changeset
  5092
    <resource: #obsolete>
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5093
    "returns current magnification of the image as an AspectAdaptor"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5094
1987
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  5095
    self obsoleteMethodWarning:'stupid method name - use #magnificationHolder'.
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  5096
    ^ self magnificationHolder
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5097
! !
228524287573 intitial checkin
tz
parents:
diff changeset
  5098
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5099
!ImageEditor methodsFor:'change & update'!
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5100
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5101
changePreviewImageMagnification
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5102
    |mag|
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5103
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5104
    mag := Dialog request:'Magnification?' initialAnswer:self imagePreView magnificationFactor.
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5105
    mag isEmptyOrNil ifTrue:[^ self].
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5106
    mag := Number readFrom:mag onError:nil.
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5107
    mag isNil ifTrue:[^ self].
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5108
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5109
    self previewMagnificationHolder value:mag
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5110
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5111
    "Created: / 10-09-2017 / 14:52:52 / cg"
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5112
!
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5113
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5114
colorCropTabSelectionIndexChanged
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5115
    |selIndex sym|
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
    selIndex := self colorCropTabSelectionIndexHolder value.
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5118
    sym := self colorCropTabSymbolList at:selIndex.
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5119
    
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5120
    self colorBoxVisibleHolder value:(sym == #colors).
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5121
    self cropBoxVisibleHolder value:(sym == #crop).
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5122
    self floodFillBoxVisibleHolder value:(sym == #fill).
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
    "Created: / 19-02-2017 / 15:01:05 / cg"
3443
b9d9eb4b34f9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3442
diff changeset
  5125
    "Modified: / 21-04-2017 / 16:05:51 / cg"
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5126
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5127
3433
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5128
colorMapModeFromImage:anImage
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5129
    "retrieves the colorMapMode for an image"
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5130
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5131
    |image colorMapModeKey|
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 := self image.
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5134
    image isNil ifTrue:[^ nil ].
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5135
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5136
    image mask notNil ifTrue: [             
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5137
        colorMapModeKey := 'masked'.
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5138
    ] ifFalse:[
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5139
        colorMapModeKey := 'depth'.
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
    colorMapModeKey := (colorMapModeKey , image depth printString) asSymbol.
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5142
    ^ colorMapModeKey
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5143
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5144
    "Created: / 06-04-2017 / 13:19:19 / cg"
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5145
!
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5146
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5147
findColorMapMode
899
43b744c647ba comment grammar
tz
parents: 898
diff changeset
  5148
    "finds the colorMapMode for a new image"
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5149
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5150
    |image newListOfColors colorMapModeKey drawColor1 drawColor2 someOrAllUsedColors|
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  5151
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  5152
    image := self image.
3433
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5153
    (colorMapModeKey := self colorMapModeFromImage:image) isNil ifTrue:[^ self].
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5154
1967
c95484b7da49 some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1966
diff changeset
  5155
    self colorMapMode setValue:colorMapModeKey.
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5156
3359
258a64461215 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3357
diff changeset
  5157
    image photometric == #palette ifTrue:[
258a64461215 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3357
diff changeset
  5158
        image colorMap isNil ifTrue:[
258a64461215 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3357
diff changeset
  5159
            image depth > 16 ifTrue:[
258a64461215 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3357
diff changeset
  5160
                image photometric:#rgb
258a64461215 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3357
diff changeset
  5161
            ].
258a64461215 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3357
diff changeset
  5162
        ].
258a64461215 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3357
diff changeset
  5163
    ].
1928
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5164
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5165
    image depth > 12 ifTrue:[
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5166
        newListOfColors := OrderedCollection new.
2870
0f130285be97 changed:
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  5167
        (image depth > 16 or:[image colorMap isEmptyOrNil]) ifTrue:[
1927
c5068006116d colors of deep images
Claus Gittinger <cg@exept.de>
parents: 1926
diff changeset
  5168
            someOrAllUsedColors := image usedColorsMax:10000.
2054
56352366d94a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2044
diff changeset
  5169
            someOrAllUsedColors notNil ifTrue:[
56352366d94a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2044
diff changeset
  5170
                someOrAllUsedColors := someOrAllUsedColors asArray.
56352366d94a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2044
diff changeset
  5171
                someOrAllUsedColors sort:self sortBlockForColors.
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5172
                newListOfColors addAll:someOrAllUsedColors.
2054
56352366d94a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2044
diff changeset
  5173
                "/ listOfColors add:Color black; add:Color white.
3317
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  5174
            ].
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  5175
            image mask notNil ifTrue:[
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  5176
                newListOfColors := (Array with:(Color noColor)),newListOfColors.
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  5177
            ].
1904
46a0b109cb47 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1900
diff changeset
  5178
        ] ifFalse:[
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5179
            newListOfColors addAll:(image colorMap).
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5180
        ].
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5181
    ] ifFalse:[
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5182
        newListOfColors := OrderedCollection withAll:(self listOfColors).
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5183
        newListOfColors isEmpty ifTrue:[   
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5184
            self colorMapMode: colorMapMode value.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5185
            image := self image.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5186
        ].                               
3317
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  5187
        "/ image mask notNil ifTrue:[
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  5188
        "/     newListOfColors := (Array with:(Color noColor)),newListOfColors.
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  5189
        "/ ].
2054
56352366d94a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2044
diff changeset
  5190
    ].  
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5191
    newListOfColors notEmptyOrNil ifTrue:[
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5192
        drawColor1 := newListOfColors at:1.
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5193
        drawColor2 := newListOfColors at:2 ifAbsent:drawColor1.
2054
56352366d94a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2044
diff changeset
  5194
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5195
        self hasTransparentColorInColorList ifTrue: [             
3367
033c21371bea #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 3359
diff changeset
  5196
            (newListOfColors includes:(Color colorId:0)) ifFalse:[
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5197
                newListOfColors addFirst:(Color colorId:0).
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5198
                drawColor1 := newListOfColors at:2. 
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5199
                drawColor2 := newListOfColors at:3 ifAbsent:drawColor1.
2054
56352366d94a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2044
diff changeset
  5200
            ]
56352366d94a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2044
diff changeset
  5201
        ].
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5202
"/        imageEditView drawingColors:(Array with: drawColor1 with: drawColor2).
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5203
"/        self selectionOfColor 
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5204
"/            setValue: 0;
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5205
"/            value: (listOfColors indexOf: imageEditView selectedColor).
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5206
    ].
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5207
    self listOfColors asOrderedCollection ~= newListOfColors ifTrue:[
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5208
        self listOfColors contents:newListOfColors.
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5209
    ].
2870
0f130285be97 changed:
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  5210
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5211
    "Modified: / 05-09-2017 / 09:03:31 / cg"
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5212
!
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5213
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5214
selectedColorsChanged
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  5215
    |colorIndices selectedIndex|
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  5216
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  5217
    (colorIndices := self selectedColors value) size == 1 ifTrue:[        
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  5218
        "/ a single color selected
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  5219
        selectedIndex := colorIndices first
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  5220
    ].    
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  5221
    self selectionOfColor value:selectedIndex
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  5222
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  5223
    "Modified: / 17-02-2017 / 14:40:33 / cg"
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5224
!
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5225
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5226
update:something with:aParameter from:changedObject
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5227
    |clrIndex image imagePreView clr changedColor cMap|
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5228
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5229
    image := self image.
2042
963042f2c474 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2016
diff changeset
  5230
    imagePreView := self imagePreView.
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5231
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5232
    changedObject == self tileModeHolder ifTrue:[
2042
963042f2c474 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2016
diff changeset
  5233
        imagePreView 
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5234
            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
  5235
            clear; 
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5236
            invalidate.
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5237
        ^ self
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5238
    ].
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5239
    
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  5240
    changedObject == self previewBackgroundColorHolder ifTrue:[
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5241
        clr := changedObject value isNil 
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5242
                    ifTrue:[imageEditView viewBackground]
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5243
                    ifFalse:[Color perform:changedObject value].
2042
963042f2c474 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2016
diff changeset
  5244
        imagePreView 
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5245
            viewBackground:clr;
3493
4396fb652bd7 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3492
diff changeset
  5246
            clear;
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5247
            invalidate.
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5248
        ^ self
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5249
    ].
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5250
    changedObject == self previewMagnificationHolder ifTrue:[
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5251
        imagePreView 
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5252
            magnificationFactor:(self previewMagnificationHolder value);
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5253
            clear; 
3493
4396fb652bd7 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3492
diff changeset
  5254
            invalidate.
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5255
        ^ self.    
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5256
    ].
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5257
    
945
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5258
    changedObject == self listOfColors ifTrue:[
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5259
        something == #at: ifTrue:[
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5260
            "/ colormap entry changed at aParameter
960
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  5261
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  5262
            clrIndex := aParameter.
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5263
            (self hasTransparentColorInColorList) ifTrue:[
960
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  5264
                clrIndex := clrIndex - 1.
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  5265
            ].
1928
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5266
            changedColor := changedObject at:aParameter.
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5267
            cMap := image colorMap.
3407
2e0024e012e9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3405
diff changeset
  5268
            (cMap notNil and:[cMap isFixedPalette not]) ifTrue:[
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5269
                image colorMap at:clrIndex put:changedColor.
1928
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5270
                self colorMapChanged.
3430
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5271
            ] ifFalse:[
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5272
                drawingColormap notNil ifTrue:[
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5273
                    drawingColormap size < clrIndex ifTrue:[
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5274
                        |newDrawingColormap|
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5275
                        
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5276
                        newDrawingColormap := drawingColormap species new:clrIndex.
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5277
                        newDrawingColormap replaceFrom:1 with:drawingColormap.
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5278
                        drawingColormap := newDrawingColormap.
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5279
                    ].    
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5280
                    drawingColormap at:clrIndex put:changedColor.
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5281
                ].
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5282
            ].    
945
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5283
            ^ self
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5284
        ].
1896
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  5285
        ^ self
945
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5286
    ].
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  5287
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  5288
    changedObject == imageEditView undoImages ifTrue:[
1987
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  5289
        self canUndoHolder value:(changedObject notEmpty).
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  5290
        ^ self.
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  5291
    ].
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  5292
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5293
    changedObject == imageEditView ifTrue:[
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5294
        something == #imageColors ifTrue:[
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5295
            self updateListOfColorsAndColormapMode.
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5296
            ^ self.
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5297
        ].
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5298
        something == #image ifTrue:[
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5299
            self updateAfterImageChange.
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5300
            imagePreView image:image scroll:false.
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5301
            self updateListOfColorsAndColormapMode.
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5302
            self tileModeHolder value ifTrue:[
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5303
                imagePreView tileMode:true tileOffset:(image extent).
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5304
            ].
3460
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5305
            self updateInfoLabel.
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5306
            ^ self.
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5307
        ].
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5308
        something == #subImageIn ifTrue:[
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5309
            imagePreView image ~~ image ifTrue:[
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  5310
                self error:'internal error' mayProceed:true.
1406
6de5c78f5bcd checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1405
diff changeset
  5311
            ].
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5312
            self tileModeHolder value ifTrue:[
2042
963042f2c474 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2016
diff changeset
  5313
                imagePreView invalidate.
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5314
            ] ifFalse:[
2042
963042f2c474 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2016
diff changeset
  5315
                imagePreView invalidate:aParameter.
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5316
            ].
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5317
            ^ self.
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5318
        ].
1491
4249a6a1b252 pick with SHIFT-click in the mag-view
Claus Gittinger <cg@exept.de>
parents: 1490
diff changeset
  5319
        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
  5320
            (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
  5321
                "/ no color/mask */
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  5322
                "/ self halt.
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5323
                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
  5324
            ] ifFalse:[
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  5325
                clrIndex := self listOfColors indexOf:aParameter.
1491
4249a6a1b252 pick with SHIFT-click in the mag-view
Claus Gittinger <cg@exept.de>
parents: 1490
diff changeset
  5326
            ].
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5327
            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
  5328
            ^ self.
4249a6a1b252 pick with SHIFT-click in the mag-view
Claus Gittinger <cg@exept.de>
parents: 1490
diff changeset
  5329
        ].
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5330
        ^ self.
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5331
    ].
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5332
1880
8a11bb0a86e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1879
diff changeset
  5333
    changedObject == imageEditView modifiedHolder ifTrue:[
8a11bb0a86e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1879
diff changeset
  5334
        "/ self halt:'to be implemented'.
8a11bb0a86e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1879
diff changeset
  5335
        ^ self
8a11bb0a86e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1879
diff changeset
  5336
    ].
8a11bb0a86e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1879
diff changeset
  5337
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5338
    changedObject == imageEditView image ifTrue:[
2042
963042f2c474 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2016
diff changeset
  5339
        "/ self halt:'to be implemented'.
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5340
        self updateAfterImageChange.
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5341
        ^ self.
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5342
    ].
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5343
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5344
    super update:something with:aParameter from:changedObject
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5345
3493
4396fb652bd7 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3492
diff changeset
  5346
    "Modified: / 13-09-2017 / 18:01:26 / cg"
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5347
!
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
updateAfterImageChange
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5350
    |img|
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5351
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5352
    (img := self image) notNil ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5353
        img := img onDevice:device.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5354
        self updateColorsFromImage:img.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5355
        self findColorMapMode.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5356
        self updateLabelsAndHistory.
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
        imageSeqNr isNil ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5359
            imageSeqNr := 1
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5360
        ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5361
        self imageHasImageSequenceHolder value:(self imageHasImageSequence).
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5362
        self imageHasNextImageHolder value:(self imageHasNextImage).
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5363
        self imageHasPreviousImageHolder value:(self imageHasPreviousImage).
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5364
        self alphaVisibleHolder value:(img hasAlphaChannel)
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5365
    ] ifFalse:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5366
        self updateForNoImage
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5367
    ]
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5368
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5369
    "Modified: / 05-09-2017 / 00:44:10 / cg"
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5370
!
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5371
1900
41ba86fb1087 cleanup
Claus Gittinger <cg@exept.de>
parents: 1899
diff changeset
  5372
updateColorsFromImage:image
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5373
    |colors depth|
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5374
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5375
    depth := image depth.
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5376
    
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5377
    depth > 16 ifTrue:[
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5378
        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
  5379
    ] ifFalse:[
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5380
        ((image photometric == #blackIs0)
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5381
        or:[ image photometric == #whiteIs0 ]) ifTrue:[
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5382
            depth <= 8 ifTrue:[
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5383
                colors := 1 to:(1 << depth) collect:[:i | image colorFromValue:i-1]
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5384
            ].
2870
0f130285be97 changed:
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  5385
        ].
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5386
        colors isNil ifTrue:[
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5387
            colors := image colorMap.
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5388
            colors isNil ifTrue:[
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5389
                Error handle:[:ex |
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5390
                    colors := OrderedCollection new.
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5391
                ] do:[
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5392
                    colors := image usedColors asSet.
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5393
                ].
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5394
            ].
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5395
        ].
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5396
    ].    
1904
46a0b109cb47 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1900
diff changeset
  5397
    self listOfColors contents:(colors asOrderedCollection).
2870
0f130285be97 changed:
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  5398
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5399
    "Modified: / 31-08-2017 / 18:54:53 / cg"
1900
41ba86fb1087 cleanup
Claus Gittinger <cg@exept.de>
parents: 1899
diff changeset
  5400
!
41ba86fb1087 cleanup
Claus Gittinger <cg@exept.de>
parents: 1899
diff changeset
  5401
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  5402
updateForNoImage
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5403
    "updates channels and view, if image is loaded"
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5404
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  5405
    self imageIsLoadedHolder value: false.
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5406
    self listOfColors removeAll.
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5407
    self imagePreView image: nil.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5408
    self imageHasImageSequenceHolder value:false.
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5409
    self alphaVisibleHolder value:false.
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5410
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5411
    "Modified: / 05-09-2017 / 00:44:20 / cg"
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5412
!
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5413
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5414
updateLabelsAndHistory
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5415
    "updates labels and history, if something has changed"
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5416
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5417
    |image rsrcClass rsrcSelector imgFile|
1910
4ca9f4b322c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1906
diff changeset
  5418
4ca9f4b322c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1906
diff changeset
  5419
    image := self image.
4ca9f4b322c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1906
diff changeset
  5420
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  5421
    self imageIsLoadedHolder value: image notNil.
1910
4ca9f4b322c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1906
diff changeset
  5422
    image isNil ifTrue: [^nil].
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5423
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5424
    self updateInfoLabel.
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5425
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5426
    ((rsrcClass := imageEditView resourceClass) notNil 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5427
    and:[ (rsrcSelector := imageEditView resourceSelector) notNil ]) ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5428
        self addHistoryEntryForClass:rsrcClass selector:rsrcSelector.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5429
    ] ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5430
        (imgFile := image fileName) notNil ifTrue: [
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5431
            self addHistoryEntryForFile:imgFile.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5432
        ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5433
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5434
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5435
    "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
  5436
!
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5437
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5438
updateListOfColorsAndColormapMode
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5439
    |listOfColors selectedColor colorMap image|
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5440
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5441
    selectedColor := self selectedColorOrNil.
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5442
    listOfColors := self listOfColors.
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5443
    
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5444
    image := self image.
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5445
    image isNil ifTrue:[
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5446
        listOfColors removeAll.
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5447
    ] ifFalse:[
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5448
        colorMap := image colorMap.
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5449
        colorMap notNil ifTrue:[
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5450
            (colorMap size <= 4096) ifTrue:[
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5451
                (image mask notNil or:[image hasAlphaChannel]) ifTrue:[
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5452
                    colorMap := (Array with:(Color noColor)),colorMap.
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5453
                ].
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5454
                listOfColors contents:colorMap.
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5455
            ] ifFalse:[
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5456
                listOfColors removeAll.
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5457
                colorMap isFixedPalette ifTrue:[
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5458
                    image colorMap:nil.
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5459
                    image photometric:#rgb.
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5460
                    image samplesPerPixel:3.
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5461
                    
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5462
                    image bitsPerSample:(Array 
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5463
                                            with:(colorMap bitsRed)
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5464
                                            with:(colorMap bitsGreen)
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5465
                                            with:(colorMap bitsBlue)).
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5466
                ].
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5467
            ]
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5468
        ].
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5469
    ].
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5470
    self findColorMapMode.
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5471
    selectedColor notNil ifTrue:[
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5472
        self selectColor:selectedColor.
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5473
    ].
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5474
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5475
    "Modified: / 05-09-2017 / 08:25:14 / cg"
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5476
! !
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5477
915
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5478
!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
  5479
1951
9ad40a628278 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1949
diff changeset
  5480
atColor:anOldColor put:newColor
1952
73a141744891 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1951
diff changeset
  5481
    "a color changed to a new color"
73a141744891 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1951
diff changeset
  5482
1930
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  5483
    |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
  5484
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5485
    list  := self listOfColors.
1951
9ad40a628278 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1949
diff changeset
  5486
    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
  5487
1930
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  5488
    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
  5489
    index ~~ 0 ifTrue:[
1928
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5490
        oldColor := list at:index.
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5491
        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
  5492
    ] ifFalse:[
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  5493
        self error:'internal error' mayProceed:true.
1928
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5494
        list add:newColor
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5495
    ].
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5496
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5497
    image := self image.
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5498
    (image colorMap isNil 
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5499
    and:[drawingColormap isNil]) ifTrue:[
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5500
        oldColor notNil ifTrue:[
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5501
            imageEditView makeUndo.
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5502
            newImage := image copy.
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5503
            newImage
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5504
                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
  5505
                do:[:x :y :clr |
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5506
                    |newClr|
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5507
1951
9ad40a628278 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1949
diff changeset
  5508
                    newClr := (clr = oldColor) ifTrue:[newColor] ifFalse:[clr].
1928
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5509
                    newImage colorAtX:x y:y put:newClr
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5510
                ].
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5511
            imageEditView image:newImage.
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5512
            imageEditView setModified.
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5513
            self updateImage.
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5514
            self updateImagePreView.
1930
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  5515
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5516
            self selectedColors value:{oldSel}.
1930
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  5517
            imageEditView selectedColorIndex:oldSel.
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  5518
            imageEditView selectedColor:(self listOfColors at:oldSel).
1928
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5519
        ]
1611
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5520
    ].
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5521
!
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5522
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5523
blueAtColor:aColor put:newBlue
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5524
    "helper used to return a new row element, when blue is changed"
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5525
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5526
    |byte|
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5527
1611
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5528
    aColor isNil ifTrue:[^ self].       "/ mask cannot be changed
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5529
    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
  5530
    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
  5531
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5532
    self atColor:aColor
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5533
             put:(Color redByte:(aColor redByte) greenByte:(aColor greenByte) blueByte:byte).
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5534
!
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5535
915
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5536
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
  5537
    "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
  5538
930
4cf126b710b3 handle errors when grabbing
Claus Gittinger <cg@exept.de>
parents: 929
diff changeset
  5539
    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
  5540
    ^ 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
  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
    "Created: / 26.7.1998 / 12:30:35 / cg"
930
4cf126b710b3 handle errors when grabbing
Claus Gittinger <cg@exept.de>
parents: 929
diff changeset
  5543
    "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
  5544
!
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5545
945
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5546
canSelectBlueInColor:aColor
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5547
    ^ aColor blueByte notNil
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
    "Created: / 7.8.1998 / 22:50:34 / cg"
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5550
    "Modified: / 7.8.1998 / 22:52:57 / cg"
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5551
!
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
canSelectGreenInColor:aColor
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5554
    ^ aColor greenByte notNil
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
    "Created: / 7.8.1998 / 22:50:22 / cg"
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5557
    "Modified: / 7.8.1998 / 22:52:46 / cg"
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5558
!
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
canSelectRedInColor:aColor
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5561
    ^ aColor redByte notNil
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
    "Created: / 7.8.1998 / 22:50:00 / cg"
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5564
    "Modified: / 7.8.1998 / 22:51:03 / cg"
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5565
!
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5566
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5567
greenAtColor:aColor put:newGreen
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5568
    "helper used to return a new row element, when green is changed"
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5569
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5570
    |byte|
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5571
1611
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5572
    aColor isNil ifTrue:[^ self].       "/ mask cannot be changed
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5573
    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
  5574
    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
  5575
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5576
    self atColor:aColor
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5577
             put:(Color redByte:(aColor redByte) greenByte:byte blueByte:(aColor blueByte)).
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5578
!
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5579
915
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5580
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
  5581
    "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
  5582
930
4cf126b710b3 handle errors when grabbing
Claus Gittinger <cg@exept.de>
parents: 929
diff changeset
  5583
    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
  5584
    ^ 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
  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
    "Created: / 26.7.1998 / 12:30:29 / cg"
930
4cf126b710b3 handle errors when grabbing
Claus Gittinger <cg@exept.de>
parents: 929
diff changeset
  5587
    "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
  5588
!
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5589
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5590
redAtColor:aColor put:newRed
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5591
    "helper used to return a new row element, when red is changed"
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5592
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5593
    |byte|
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5594
1611
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5595
    aColor isNil ifTrue:[^ self].       "/ mask cannot be changed
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5596
    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
  5597
    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
  5598
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5599
    self atColor:aColor
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5600
             put:(Color redByte:byte greenByte:(aColor greenByte) blueByte:(aColor blueByte)).
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5601
!
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5602
915
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5603
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
  5604
    "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
  5605
930
4cf126b710b3 handle errors when grabbing
Claus Gittinger <cg@exept.de>
parents: 929
diff changeset
  5606
    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
  5607
    ^ 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
  5608
930
4cf126b710b3 handle errors when grabbing
Claus Gittinger <cg@exept.de>
parents: 929
diff changeset
  5609
    "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
  5610
!
49ad9f552d64 oops - fixed bg-color access in dataset
Claus Gittinger <cg@exept.de>
parents: 1446
diff changeset
  5611
2712
cddda688a9f2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2711
diff changeset
  5612
theColorItself:aColor
cddda688a9f2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2711
diff changeset
  5613
    "an accessor for the table-column"
cddda688a9f2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2711
diff changeset
  5614
1449
49ad9f552d64 oops - fixed bg-color access in dataset
Claus Gittinger <cg@exept.de>
parents: 1446
diff changeset
  5615
    ^ 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
  5616
! !
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5617
2663
Claus Gittinger <cg@exept.de>
parents: 2653
diff changeset
  5618
!ImageEditor methodsFor:'defaults'!
Claus Gittinger <cg@exept.de>
parents: 2653
diff changeset
  5619
Claus Gittinger <cg@exept.de>
parents: 2653
diff changeset
  5620
aboutIcon
Claus Gittinger <cg@exept.de>
parents: 2653
diff changeset
  5621
    ^ self class defaultIcon
Claus Gittinger <cg@exept.de>
parents: 2653
diff changeset
  5622
! !
Claus Gittinger <cg@exept.de>
parents: 2653
diff changeset
  5623
2339
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5624
!ImageEditor methodsFor:'drag & drop'!
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5625
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5626
canDropObjects:aCollectionOfDropObjects in:aWidget
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5627
    ^ (aCollectionOfDropObjects size == 1) 
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5628
      and:[ aCollectionOfDropObjects 
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5629
                contains:[:dropObject | dropObject isFileObject]]
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5630
!
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
dropObjects:aCollectionOfDropObjects in:aWidget at:position
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5633
    |dropObject|
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5634
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5635
    dropObject := aCollectionOfDropObjects first.
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5636
    dropObject isFileObject ifTrue:[
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5637
        self loadFromFile:dropObject asFilename.
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5638
    ]
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
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5641
!ImageEditor methodsFor:'event handling'!
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5642
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5643
processEvent:anEvent
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5644
    "Return true, if I have eaten the event"
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5645
2945
facf3c7b0e31 changed: #processEvent:
Claus Gittinger <cg@exept.de>
parents: 2932
diff changeset
  5646
    <resource: #keyboard (#Paste #Copy )>
facf3c7b0e31 changed: #processEvent:
Claus Gittinger <cg@exept.de>
parents: 2932
diff changeset
  5647
2841
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5648
    |view focusView p transformation|
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5649
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5650
    view := anEvent view.
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5651
    view notNil ifTrue:[
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5652
        
2841
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5653
        view == self imagePreView ifTrue:[
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5654
            ((anEvent isButtonPressEvent and:[ anEvent button == 1 ])
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5655
            or:[ anEvent isButtonMotionEvent and:[ anEvent hasButton1 ]])  ifTrue:[
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5656
                p := anEvent x @ anEvent y.                
2841
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5657
                (transformation := view transformation) notNil ifTrue:[
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5658
                    p := transformation applyInverseTo:p.
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5659
                ].
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5660
                p := p / self previewMagnificationHolder value.
2841
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5661
                self imageEditView scrollToMakeVisible:p.    
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5662
                ^ true.
2546
b69247f503b8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2539
diff changeset
  5663
            ].
2841
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5664
        ].
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5665
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5666
        anEvent isKeyPressEvent ifTrue:[
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5667
            focusView := view windowGroup focusView ? view.
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5668
            (focusView isComponentOf:(builder componentAt:#colorDataSetView)) ifTrue:[
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5669
                anEvent key == #Paste ifTrue:[
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5670
                    self pasteColorIntoColormap.
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5671
                    ^ true.
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5672
                ].
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5673
                anEvent key == #Copy ifTrue:[
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5674
                    self copyColorFromColormap.
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5675
                    ^ true.
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5676
                ].
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5677
            ].
2339
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5678
        ].
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5679
    ].
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5680
    ^ false.
2841
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5681
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5682
    "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
  5683
! !
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5684
672
738210a2fa06 revised version
tz
parents: 651
diff changeset
  5685
!ImageEditor methodsFor:'help'!
738210a2fa06 revised version
tz
parents: 651
diff changeset
  5686
738210a2fa06 revised version
tz
parents: 651
diff changeset
  5687
defaultInfoLabel
1969
f1763f6f4500 stripped down menu, if in browser
Claus Gittinger <cg@exept.de>
parents: 1967
diff changeset
  5688
    "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
  5689
     some widget with a help text."
672
738210a2fa06 revised version
tz
parents: 651
diff changeset
  5690
3465
510f01b982de #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3464
diff changeset
  5691
    |resourceClass resourceSelector img|
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5692
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5693
    resourceClass := imageEditView resourceClass.
1965
1d2b7893ae89 some code cleanup (resourceClass was actually its name)
Claus Gittinger <cg@exept.de>
parents: 1962
diff changeset
  5694
    resourceClass notNil ifTrue:[
1969
f1763f6f4500 stripped down menu, if in browser
Claus Gittinger <cg@exept.de>
parents: 1967
diff changeset
  5695
        resourceSelector := imageEditView resourceSelector.
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5696
        resourceSelector notNil ifTrue:[
3469
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5697
            ^ resources 
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5698
                    string:(self modified 
3535
e8ad4febf6f4 #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 3530
diff changeset
  5699
                            ifTrue:['Image (modified) from: %1 » %2']
e8ad4febf6f4 #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 3530
diff changeset
  5700
                            ifFalse:['Image from: %1 » %2'])
3469
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5701
                    with:resourceClass name
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5702
                    with:resourceSelector
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5703
        ].
672
738210a2fa06 revised version
tz
parents: 651
diff changeset
  5704
    ].
3465
510f01b982de #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3464
diff changeset
  5705
    
510f01b982de #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3464
diff changeset
  5706
    (img := imageEditView image) notNil ifTrue:[
510f01b982de #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3464
diff changeset
  5707
        img fileName notNil ifTrue:[
3469
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5708
            ^ resources 
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5709
                    string:(self modified 
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5710
                            ifTrue:['Image (modified) from: %1']
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5711
                            ifFalse:['Image from: %1'])
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5712
                     with:(img fileName asFilename baseName).
3465
510f01b982de #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3464
diff changeset
  5713
        ].    
510f01b982de #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3464
diff changeset
  5714
    ].    
3380
0eb344c2fe3a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3379
diff changeset
  5715
    ^ resources string:'No class and selector defined.'
3465
510f01b982de #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3464
diff changeset
  5716
3469
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5717
    "Modified: / 29-08-2017 / 19:47:25 / cg"
674
d49e23b768e6 unused method found + help file access added
tz
parents: 673
diff changeset
  5718
!
d49e23b768e6 unused method found + help file access added
tz
parents: 673
diff changeset
  5719
702
c9de7a9bc416 docu call changed
tz
parents: 694
diff changeset
  5720
openDocumentation
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5721
    "opens the documentation file of the Image Editor"
674
d49e23b768e6 unused method found + help file access added
tz
parents: 673
diff changeset
  5722
763
19b3e479e0b8 docu call
tz
parents: 756
diff changeset
  5723
    self openHTMLDocument: 'tools/uipainter/ImageEditor.html'
19b3e479e0b8 docu call
tz
parents: 756
diff changeset
  5724
672
738210a2fa06 revised version
tz
parents: 651
diff changeset
  5725
! !
738210a2fa06 revised version
tz
parents: 651
diff changeset
  5726
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5727
!ImageEditor methodsFor:'loading'!
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5728
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5729
loadFromClass:aClass andSelector:aSelector
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5730
    "loads an image from the method specified by class and selector"
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5731
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5732
    self assert:(aClass isNil or:[aClass isClass]).
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5733
2932
7f305ee14e98 changed: #loadFromClass:andSelector:
Claus Gittinger <cg@exept.de>
parents: 2893
diff changeset
  5734
    (aClass isNil or:[aSelector isNil]) ifTrue:[
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5735
        imageEditView resourceClass:aClass.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5736
        imageEditView resourceSelector:aSelector.
1969
f1763f6f4500 stripped down menu, if in browser
Claus Gittinger <cg@exept.de>
parents: 1967
diff changeset
  5737
        imageEditView image:nil.
2006
ae6fe65e9f33 embedding as special editors
Claus Gittinger <cg@exept.de>
parents: 1998
diff changeset
  5738
        self clearModified.
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5739
        ^ self.
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5740
    ].
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5741
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5742
    (imageEditView loadFromClass:aClass andSelector:aSelector) notNil ifTrue:[
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5743
        self updateAfterImageChange.
2006
ae6fe65e9f33 embedding as special editors
Claus Gittinger <cg@exept.de>
parents: 1998
diff changeset
  5744
        self clearModified.
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5745
    ]
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5746
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5747
    "Modified: / 16-03-1999 / 21:44:41 / cg"
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5748
    "Modified (comment): / 16-02-2017 / 10:22:51 / cg"
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5749
!
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5750
2339
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5751
loadFromFile:aFileName
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5752
    "loads an image from aFileName and sets up color map list and other info labels"
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5753
980
bd21079f40e1 show waitCursor while loading from file.
Claus Gittinger <cg@exept.de>
parents: 976
diff changeset
  5754
    self withCursor:Cursor wait do:[
bd21079f40e1 show waitCursor while loading from file.
Claus Gittinger <cg@exept.de>
parents: 976
diff changeset
  5755
        (imageEditView loadFromFile: aFileName) notNil ifTrue:[
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5756
            self updateAfterImageChange
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5757
        ]
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5758
    ]
960
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  5759
1057
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  5760
    "Modified: / 16.3.1999 / 21:44:26 / cg"
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5761
!
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5762
960
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  5763
loadFromImage:anImage
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5764
    "loads an image from anImage and sets up color map list and other info labels"
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5765
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5766
    |img|
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5767
1057
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  5768
    anImage notNil ifTrue:[    
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5769
        img := anImage onDevice:device.
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5770
    ].
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5771
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5772
    imageEditView image:img.
1799
e605f0af928a clear modified flag when an image is loaded
Claus Gittinger <cg@exept.de>
parents: 1796
diff changeset
  5773
    imageEditView clearModified.
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5774
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5775
    self updateAfterImageChange.
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5776
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5777
    "Modified: / 16-03-1999 / 21:43:56 / cg"
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5778
    "Modified (comment): / 16-02-2017 / 10:21:47 / cg"
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5779
!
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5780
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5781
loadFromOrPrepareForClass: aClass andSelector: aSelector
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5782
    "loads an image by evaluating aMessage;
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5783
     if no image could extract from aMessage; do set the class and the selector from 
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5784
     the aMessage for a saving at the end of editing"
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5785
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5786
    (imageEditView loadFromClass:aClass andSelector:aSelector) notNil ifTrue: [
1900
41ba86fb1087 cleanup
Claus Gittinger <cg@exept.de>
parents: 1899
diff changeset
  5787
        self updateColorsFromImage:self image.
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5788
        self findColorMapMode.
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5789
    ] ifFalse: [
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5790
        imageEditView resourceClass: aClass.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5791
        imageEditView resourceSelector:aSelector.
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5792
    ].
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5793
    self updateLabelsAndHistory.
1057
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  5794
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  5795
    "Modified: / 16.3.1999 / 21:45:07 / cg"
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5796
! !
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5797
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5798
!ImageEditor methodsFor:'menu aspects'!
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
canDrawCirclesHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5801
    ^ self imageIsLoadedAndNotReadonlyHolder
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
    "Created: / 16-02-2017 / 01:41:31 / cg"
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5804
!
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
canDrawPointsHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5807
    ^ self imageIsLoadedAndNotReadonlyHolder
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
    "Created: / 16-02-2017 / 01:39:37 / cg"
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5810
!
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
canDrawRectsHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5813
    ^ self imageIsLoadedAndNotReadonlyHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5814
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5815
    "Created: / 16-02-2017 / 01:40:17 / cg"
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5816
!
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5817
3435
e3e1eea25472 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3433
diff changeset
  5818
canFillCircleHolder
e3e1eea25472 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3433
diff changeset
  5819
    ^ self imageIsLoadedAndNotReadonlyHolder
e3e1eea25472 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3433
diff changeset
  5820
e3e1eea25472 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3433
diff changeset
  5821
    "Created: / 10-04-2017 / 08:46:00 / cg"
e3e1eea25472 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3433
diff changeset
  5822
!
e3e1eea25472 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3433
diff changeset
  5823
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5824
canFillRectsHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5825
    ^ self imageIsLoadedAndNotReadonlyHolder
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
    "Created: / 16-02-2017 / 01:40:21 / cg"
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5828
!
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
canFloodFillHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5831
    ^ self imageIsLoadedAndNotReadonlyHolder
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
    "Created: / 16-02-2017 / 01:41:33 / cg"
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5834
!
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
canSprayHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5837
    ^ self imageIsLoadedAndNotReadonlyHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5838
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5839
    "Created: / 16-02-2017 / 01:44:47 / cg"
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5840
!
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5841
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5842
colorMapMenuHolder
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5843
    ^ [ self class colorMapMenu ]
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5844
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5845
    "Created: / 31-08-2017 / 18:47:17 / cg"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5846
!
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5847
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5848
imageIsLoadedAndAllowedToChangeImageDimension
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5849
    "returns whether an image is loaded as value holder"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5850
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
        self imageIsLoadedHolder value
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5853
        and:[ self allowedToChangeImageDimension ] 
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
    "Created: / 16-02-2017 / 01:58:41 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5857
!
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
imageIsLoadedAndAllowedToChangeImageDimensionAndDepth
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5860
    "returns whether an image is loaded as value holder"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5861
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
        self imageIsLoadedHolder value
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5864
        and:[ self allowedToChangeImageDimensionAndDepth ] 
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
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5867
    "Modified: / 04-07-2010 / 10:15:43 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5868
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5869
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5870
imageIsLoadedAndAllowedToFlipHolder
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5871
    ^ self imageIsLoadedAndNotReadonlyHolder
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5872
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5873
    "Created: / 16-02-2017 / 01:57:02 / cg"
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5874
!
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
imageIsLoadedAndClassDefined
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5877
    "returns whether an image is loaded as value holder"
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
    ^ [self hasClassAndSelectorDefinedHolder value
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5880
       and:[self imageIsLoadedHolder value]]
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
    "Created: / 31-07-1998 / 02:04:18 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5883
    "Modified: / 04-07-2010 / 10:15:48 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5884
!
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
imageIsLoadedAndNotReadonlyHolder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5887
    "returns whether an image is loaded and editable as value holder"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5888
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5889
    ^ BlockValue
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5890
        with:[:loaded | loaded and:[ self readOnly not ]]
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5891
        argument:(self imageIsLoadedHolder)
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
    "Modified: / 16-02-2017 / 12:11:31 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5894
!
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
imageIsLoadedHolder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5897
    "returns whether an image is loaded as value holder"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5898
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5899
    |holder|
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 := builder bindingAt:#imageIsLoaded) isNil ifTrue:[
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5902
        builder aspectAt:#imageIsLoaded put:(holder :=  false asValue).
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5903
    ].
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5904
    ^ holder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5905
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5906
    "Created: / 04-07-2010 / 10:15:38 / cg"
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5907
! !
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5908
3374
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  5909
!ImageEditor methodsFor:'menu item visibility'!
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
isNotStandAloneAndMethodSaveAndLoadMenuItemsVisible
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  5912
    ^ self isNotStandAlone and:[ self methodSaveAndLoadMenuItemsVisible ]
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  5913
!
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
isStandAloneAndMethodSaveAndLoadMenuItemsVisible
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  5916
    ^ self isStandAlone and:[ self methodSaveAndLoadMenuItemsVisible ]
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  5917
!
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
methodSaveAndLoadMenuItemsVisible
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  5920
    ^ true
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  5921
!
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
modeMenuVisible
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  5924
    ^ true
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  5925
! !
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  5926
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5927
!ImageEditor methodsFor:'menu modes'!
228524287573 intitial checkin
tz
parents:
diff changeset
  5928
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  5929
colorMapMode
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5930
    "returns the colorMapMode"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5931
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  5932
    colorMapMode isNil ifTrue: [colorMapMode := '' asValue].
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5933
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  5934
    ^colorMapMode
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5935
!
228524287573 intitial checkin
tz
parents:
diff changeset
  5936
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  5937
editMode
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  5938
    "returns editMode"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5939
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  5940
    editMode isNil ifTrue: [
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  5941
        editMode := #point asValue.
1329
a38c2e29d1fb use onChangeEvaluate:
Claus Gittinger <cg@exept.de>
parents: 1309
diff changeset
  5942
        editMode onChangeEvaluate:[imageEditView editMode:(editMode value)]
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  5943
    ].
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  5944
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  5945
    ^editMode
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5946
!
228524287573 intitial checkin
tz
parents:
diff changeset
  5947
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  5948
mouseKeyColorMode
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  5949
    "returns mouseKeyColorMode"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5950
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5951
    mouseKeyColorMode isNil ifTrue:[
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  5952
        mouseKeyColorMode := 1 asValue.
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5953
        mouseKeyColorMode onChangeEvaluate: [
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5954
            imageEditView mouseKeyColorMode:mouseKeyColorMode value. 
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5955
            self selectedColors value:{ self listOfColors indexOf:imageEditView selectedColor }.
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5956
        ]
956
dc4df8952e82 check whether imageEditView is nil
ca
parents: 951
diff changeset
  5957
    ].
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5958
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  5959
    ^mouseKeyColorMode
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5960
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5961
    "Modified: / 10.2.2000 / 23:16:42 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5962
! !
228524287573 intitial checkin
tz
parents:
diff changeset
  5963
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5964
!ImageEditor methodsFor:'private'!
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5965
3460
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5966
askForDepthThenDo:aBlock
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5967
    |oldDepth suggestion depth|
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5968
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5969
    oldDepth := self image depth.
3471
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  5970
    
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  5971
    suggestion := LastDepth notNil ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  5972
                    LastDepth
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  5973
                  ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  5974
                    oldDepth > 8 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  5975
                        ifTrue:[8] 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  5976
                        ifFalse:[(oldDepth // 2 - 1) nextPowerOf2]
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  5977
                  ].
3460
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 := Dialog request:'New depth ?' initialAnswer:suggestion asString.
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5980
    depth isEmptyOrNil ifTrue:[^ self].
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5981
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5982
    depth := Number readFrom:depth onError:nil.
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5983
    depth isNil ifTrue:[^ self].
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5984
3471
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  5985
    LastDepth := depth.    
3460
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5986
    aBlock value:depth
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
    "Created: / 24-08-2017 / 17:05:39 / cg"
3471
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  5989
    "Modified: / 30-08-2017 / 01:22:36 / cg"
3460
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5990
!
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5991
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5992
checkModified
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5993
    imageEditView modified value ifTrue:[
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5994
        (Dialog
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5995
            confirm:(resources string:'Image was not saved. Proceed anyway ?')
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5996
            yesLabel:(resources string:'Proceed')
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5997
            noLabel:(resources string:'Cancel')
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5998
            initialAnswer:false
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5999
        ) ifFalse: [^false].
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6000
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6001
        imageEditView clearModified.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6002
    ].
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6003
    ^ true
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6004
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6005
    "Modified: / 29.7.1998 / 18:55:24 / cg"
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6006
!
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6007
3379
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  6008
clearModifiedAndRememberImageSaved
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  6009
    "called after a save-to-xxx operation"
3375
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
    self clearModified.
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  6012
    savedImage := self image.
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  6013
!
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  6014
3379
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  6015
clearModifiedAndRememberImageSavedAsFile:file
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  6016
    "called after a save-to-file operation"
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
    self clearModifiedAndRememberImageSaved.
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  6019
    savedFile := file.
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  6020
!
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  6021
1960
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6022
pointFromString:aString
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6023
    |p s x y|
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
    p := Object readFromString:aString onError:nil.
1962
9166ba3ce7c3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1961
diff changeset
  6026
    p isPoint ifTrue:[^ p].
1960
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6027
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6028
    s := aString readStream.
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6029
    x := Number readFrom:s onError:nil.
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6030
    x notNil ifTrue:[
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6031
        s skipSeparators.
1962
9166ba3ce7c3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1961
diff changeset
  6032
        [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
  6033
        y := Number readFrom:s onError:nil.
1961
d9082e597adb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1960
diff changeset
  6034
        ^ x @ (y ? x)
1960
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6035
    ].
1962
9166ba3ce7c3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1961
diff changeset
  6036
    ^ nil
1960
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6037
!
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6038
1939
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6039
sortBlockForColors
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6040
    ^ self sortBlockForColorsByHLS.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6041
"/    ^ self sortBlockForColorsByRGB
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6042
!
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6043
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6044
sortBlockForColorsByHLS
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6045
    ^ [:a :b |
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6046
        |h1 h2 s1 s2 l1 l2|
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6047
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6048
        h1 := a hue ? 0.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6049
        h2 := b hue ? 0.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6050
        (h1 between: h2-30 and:h2+30) ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6051
            l1 := a light.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6052
            l2 := b light.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6053
            l1 = l2 ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6054
                a saturation < b saturation
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6055
            ] ifFalse:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6056
                l1 < l2
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6057
            ].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6058
"/            s1 := a saturation.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6059
"/            s2 := b saturation.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6060
"/            s1 = s2 ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6061
"/                a light < b light
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
"/                s1 < s2 
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
        ] ifFalse:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6066
            h1 < h2 
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
      ]
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6069
!
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6070
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6071
sortBlockForColorsByRGB
1939
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6072
    ^ [:a :b |
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6073
            a redByte == b redByte ifTrue:[
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6074
                a greenByte == b greenByte ifTrue:[
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6075
                    a blueByte < b blueByte
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 greenByte < b greenByte 
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
            ] ifFalse:[
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6080
                a redByte < b redByte 
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6081
            ]
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6082
      ]
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6083
!
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6084
1598
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  6085
updateImage
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  6086
    |img|
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  6087
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  6088
    img := imageEditView image.
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  6089
    imageEditView image:img.
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  6090
    self fetchImageData.
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6091
    self imageIsLoadedHolder changed.
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6092
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6093
    "Modified: / 16-02-2017 / 12:18:08 / cg"
1598
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  6094
!
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  6095
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  6096
updateImagePreView
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  6097
    self tileModeHolder value ifTrue:[
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  6098
        self imagePreView tileMode:true tileOffset:(self image extent).
1923
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6099
    ].
3253
32b2ae3350b9 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 3242
diff changeset
  6100
    self imagePreView 
32b2ae3350b9 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 3242
diff changeset
  6101
        setImage:(self image) scroll:false invalidate:false; "/ true.
32b2ae3350b9 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 3242
diff changeset
  6102
        invalidate.
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  6103
! !
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  6104
535
1caf545614c5 info bar subspec changed
tz
parents: 519
diff changeset
  6105
!ImageEditor methodsFor:'queries'!
1caf545614c5 info bar subspec changed
tz
parents: 519
diff changeset
  6106
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6107
hasAlphaChannel
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6108
    |img|
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6109
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6110
    img := self image.
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6111
    img isNil ifTrue:[^ false].
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6112
    ^ img hasAlphaChannel
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6113
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6114
    "Created: / 05-09-2017 / 08:29:23 / cg"
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6115
!
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6116
2707
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  6117
hasLastGrabScreenArea
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  6118
    ^ [ lastGrabbedScreenArea notNil ]
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  6119
!
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  6120
960
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6121
hasMask
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6122
    |img|
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6123
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6124
    img := self image.
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6125
    img isNil ifTrue:[^ false].
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6126
    img mask isNil ifTrue:[^ false].
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  6127
    ^ colorMapMode value notNil and:[colorMapMode value startsWith:'mask']
960
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6128
3411
fd6472405fd0 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3409
diff changeset
  6129
    "Created: / 18-08-1998 / 17:17:38 / cg"
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6130
    "Modified: / 05-09-2017 / 08:28:44 / cg"
3411
fd6472405fd0 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3409
diff changeset
  6131
!
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
hasMaskHolder
fd6472405fd0 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3409
diff changeset
  6134
    ^ [ self hasMask ]
fd6472405fd0 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3409
diff changeset
  6135
fd6472405fd0 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3409
diff changeset
  6136
    "Created: / 18-02-2017 / 00:41:19 / cg"
960
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6137
!
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6138
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6139
hasTransparentColorInColorList
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6140
    ^ self hasMask or:[self hasAlphaChannel]
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6141
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6142
    "Created: / 05-09-2017 / 09:03:24 / cg"
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6143
!
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6144
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6145
modified
3416
9d51a45479e3 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3415
diff changeset
  6146
    "true if the image was modified"
9d51a45479e3 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3415
diff changeset
  6147
    
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6148
    ^ imageEditView modified
3416
9d51a45479e3 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3415
diff changeset
  6149
9d51a45479e3 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3415
diff changeset
  6150
    "Modified (comment): / 20-02-2017 / 16:23:32 / cg"
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6151
!
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6152
2006
ae6fe65e9f33 embedding as special editors
Claus Gittinger <cg@exept.de>
parents: 1998
diff changeset
  6153
modified:aBoolean
ae6fe65e9f33 embedding as special editors
Claus Gittinger <cg@exept.de>
parents: 1998
diff changeset
  6154
    super modified:aBoolean.
ae6fe65e9f33 embedding as special editors
Claus Gittinger <cg@exept.de>
parents: 1998
diff changeset
  6155
    imageEditView modified:aBoolean
ae6fe65e9f33 embedding as special editors
Claus Gittinger <cg@exept.de>
parents: 1998
diff changeset
  6156
!
ae6fe65e9f33 embedding as special editors
Claus Gittinger <cg@exept.de>
parents: 1998
diff changeset
  6157
535
1caf545614c5 info bar subspec changed
tz
parents: 519
diff changeset
  6158
preferredExtent
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  6159
    "returns the preferred extent"
535
1caf545614c5 info bar subspec changed
tz
parents: 519
diff changeset
  6160
3443
b9d9eb4b34f9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3442
diff changeset
  6161
    ^ 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
  6162
b9d9eb4b34f9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3442
diff changeset
  6163
    "Modified (format): / 13-04-2017 / 09:52:25 / cg"
535
1caf545614c5 info bar subspec changed
tz
parents: 519
diff changeset
  6164
! !
1caf545614c5 info bar subspec changed
tz
parents: 519
diff changeset
  6165
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6166
!ImageEditor methodsFor:'selection'!
228524287573 intitial checkin
tz
parents:
diff changeset
  6167
228524287573 intitial checkin
tz
parents:
diff changeset
  6168
magnification
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  6169
    "returns the magnification of the image"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6170
911
ec8db5b62352 unnecessary calls removed
tz
parents: 905
diff changeset
  6171
    self imageEditView isNil ifTrue: [^1].
ec8db5b62352 unnecessary calls removed
tz
parents: 905
diff changeset
  6172
    ^imageEditView magnification x
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6173
!
228524287573 intitial checkin
tz
parents:
diff changeset
  6174
228524287573 intitial checkin
tz
parents:
diff changeset
  6175
magnification: aValue
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  6176
    "sets the magnification of the image"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6177
905
5f5d0a415c04 grid magnification can be changed
tz
parents: 903
diff changeset
  6178
    |magnification|        
5f5d0a415c04 grid magnification can be changed
tz
parents: 903
diff changeset
  6179
    magnification := (aValue ? 1) asPoint.
911
ec8db5b62352 unnecessary calls removed
tz
parents: 905
diff changeset
  6180
    (magnification = imageEditView magnification or: [magnification = (0@0)]) ifTrue: [^nil].
ec8db5b62352 unnecessary calls removed
tz
parents: 905
diff changeset
  6181
    imageEditView magnification: magnification
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6182
!
228524287573 intitial checkin
tz
parents:
diff changeset
  6183
228524287573 intitial checkin
tz
parents:
diff changeset
  6184
selectedColorIndex
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  6185
    "returns the index of the selected color"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6186
228524287573 intitial checkin
tz
parents:
diff changeset
  6187
    ^selectedColorIndex
228524287573 intitial checkin
tz
parents:
diff changeset
  6188
!
228524287573 intitial checkin
tz
parents:
diff changeset
  6189
228524287573 intitial checkin
tz
parents:
diff changeset
  6190
selectedColorIndex: anIndex
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  6191
    "sets the index of the selected color"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6192
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6193
    |clr pixel|
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6194
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6195
    selectedColorIndex := anIndex.
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  6196
    anIndex isNil ifTrue:[^ self].
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  6197
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6198
    clr := self listOfColors at:anIndex ifAbsent:nil.
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6199
    clr isNil ifTrue:[^ self].
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6200
1075
74795d3e647d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1057
diff changeset
  6201
    pixel := anIndex - 1.
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6202
    (self listOfColors at:1) = Color noColor ifTrue:[
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6203
        anIndex == 1 ifTrue:[
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6204
            pixel := nil.       "/ mask
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6205
        ] ifFalse:[
1075
74795d3e647d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1057
diff changeset
  6206
            pixel := pixel - 1
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6207
        ]
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6208
    ].
3409
d821859c163e #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3408
diff changeset
  6209
    imageEditView selectedColor:clr.
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6210
    imageEditView selectedColorIndex:pixel.
3409
d821859c163e #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3408
diff changeset
  6211
d821859c163e #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3408
diff changeset
  6212
    "Modified: / 17-02-2017 / 16:29:09 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6213
! !
228524287573 intitial checkin
tz
parents:
diff changeset
  6214
1716
5ae373f6fef0 method category rename
Claus Gittinger <cg@exept.de>
parents: 1715
diff changeset
  6215
!ImageEditor methodsFor:'startup & release'!
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6216
1640
87ce36f48fbc remember previous relative sizes and
Claus Gittinger <cg@exept.de>
parents: 1639
diff changeset
  6217
closeDownViews
1644
df1f5a97b8e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1643
diff changeset
  6218
    builder notNil ifTrue:[
df1f5a97b8e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1643
diff changeset
  6219
        DefaultRelativeSizes :=
df1f5a97b8e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1643
diff changeset
  6220
            Array 
1998
efd9be2585e3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1996
diff changeset
  6221
                with:(builder componentAt:#mainPanel) relativeCorners    
1644
df1f5a97b8e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1643
diff changeset
  6222
                with:(builder componentAt:#verticalPanel) relativeCorners.
df1f5a97b8e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1643
diff changeset
  6223
    ].
1640
87ce36f48fbc remember previous relative sizes and
Claus Gittinger <cg@exept.de>
parents: 1639
diff changeset
  6224
    super closeDownViews
87ce36f48fbc remember previous relative sizes and
Claus Gittinger <cg@exept.de>
parents: 1639
diff changeset
  6225
!
87ce36f48fbc remember previous relative sizes and
Claus Gittinger <cg@exept.de>
parents: 1639
diff changeset
  6226
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6227
closeRequest
2016
62843f7d07b7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2006
diff changeset
  6228
    "asks for permission before closing"
62843f7d07b7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2006
diff changeset
  6229
62843f7d07b7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2006
diff changeset
  6230
    imageEditView checkModified ifTrue:[
62843f7d07b7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2006
diff changeset
  6231
        super closeRequest
62843f7d07b7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2006
diff changeset
  6232
    ]
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6233
!
228524287573 intitial checkin
tz
parents:
diff changeset
  6234
1980
862d4036cebd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1975
diff changeset
  6235
commonPostBuild
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6236
    imageEditView undoImages addDependent:self.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6237
    imageEditView imageInfoHolder:(self imageInfoHolder).
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6238
    imageEditView activityInfoHolder:(self activityInfoHolder).
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6239
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6240
    imageEditView clickInfoCallBack:[:button :point | 
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6241
                        |mouseButtonColorToolBar|
3170
a49100905be3 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  6242
                        button <= 2 ifTrue:[
a49100905be3 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  6243
                            mouseButtonColorToolBar := self componentAt:#MouseButtonColorToolBar.
a49100905be3 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  6244
                            (mouseButtonColorToolBar itemAt:button) toggleIndication.
a49100905be3 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  6245
                            mouseButtonColorToolBar do: [:i| i updateIndicators].
a49100905be3 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  6246
                        ].
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6247
                  ].
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6248
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6249
    imageEditView addDependent:self.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6250
    imageEditView modifiedHolder addDependent:self.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6251
1640
87ce36f48fbc remember previous relative sizes and
Claus Gittinger <cg@exept.de>
parents: 1639
diff changeset
  6252
    DefaultRelativeSizes notNil ifTrue:[
1998
efd9be2585e3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1996
diff changeset
  6253
        (builder componentAt:#mainPanel) relativeCorners:DefaultRelativeSizes first.
1980
862d4036cebd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1975
diff changeset
  6254
        (builder componentAt:#verticalPanel) relativeCorners:DefaultRelativeSizes second.
1640
87ce36f48fbc remember previous relative sizes and
Claus Gittinger <cg@exept.de>
parents: 1639
diff changeset
  6255
    ].
1995
ad11533a39e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1993
diff changeset
  6256
1996
d18588052ade infoHolder handling
Claus Gittinger <cg@exept.de>
parents: 1995
diff changeset
  6257
    "/ using masters infoHolder ?
3543
06dbbe8684c7 #BUGFIX by stefan
Stefan Vogel <sv@exept.de>
parents: 3535
diff changeset
  6258
    self useAlienInfoLabel ifTrue:[
1998
efd9be2585e3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1996
diff changeset
  6259
        (builder componentAt:#mainPanel) layout bottomOffset:0.
1995
ad11533a39e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1993
diff changeset
  6260
        (builder componentAt:#infoBarSubSpec) beInvisible
ad11533a39e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1993
diff changeset
  6261
    ]
3535
e8ad4febf6f4 #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 3530
diff changeset
  6262
e8ad4febf6f4 #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 3530
diff changeset
  6263
    "Modified: / 20-02-2018 / 13:05:30 / stefan"
1640
87ce36f48fbc remember previous relative sizes and
Claus Gittinger <cg@exept.de>
parents: 1639
diff changeset
  6264
!
87ce36f48fbc remember previous relative sizes and
Claus Gittinger <cg@exept.de>
parents: 1639
diff changeset
  6265
1980
862d4036cebd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1975
diff changeset
  6266
open
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6267
    "after opening, gets the imageEditView"
1980
862d4036cebd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1975
diff changeset
  6268
862d4036cebd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1975
diff changeset
  6269
    super open.
862d4036cebd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1975
diff changeset
  6270
862d4036cebd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1975
diff changeset
  6271
    imageEditView := (self componentAt: #imageEditView) subViews first.
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6272
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6273
    "Modified (comment): / 05-09-2017 / 10:39:45 / cg"
1980
862d4036cebd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1975
diff changeset
  6274
!
862d4036cebd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1975
diff changeset
  6275
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6276
postOpenWith:aBuilder
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  6277
    "after opening, sets the masterApplication of the imageEditView to self;
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  6278
     evaluate the postOpenAction"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6279
1921
699dca2ebb51 code cleanup
Claus Gittinger <cg@exept.de>
parents: 1916
diff changeset
  6280
    postOpenAction value.
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6281
1250
644ed357b524 reset menuBar in keyProcessor
ca
parents: 1196
diff changeset
  6282
    super postOpenWith:aBuilder.
644ed357b524 reset menuBar in keyProcessor
ca
parents: 1196
diff changeset
  6283
644ed357b524 reset menuBar in keyProcessor
ca
parents: 1196
diff changeset
  6284
    aBuilder keyboardProcessor menuBar:nil.
2339
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  6285
    self windowGroup addPreEventHook:self.
3415
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  6286
    self colorCropTabSelectionIndexChanged.
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  6287
3421
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  6288
    self drawingColor1Holder valueHolder:(imageEditView drawingColorHolders at:1).
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  6289
    self drawingColor2Holder valueHolder:(imageEditView drawingColorHolders at:2).
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6290
    imageEditView drawingAlpha:(self alphaHolder value).
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6291
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6292
    "Modified (format): / 05-09-2017 / 10:40:10 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6293
! !
228524287573 intitial checkin
tz
parents:
diff changeset
  6294
1715
9eebdb3802aa method category rename
Claus Gittinger <cg@exept.de>
parents: 1713
diff changeset
  6295
!ImageEditor methodsFor:'user actions-colormap'!
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6296
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6297
addColorToColormap
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6298
    "undoable: add black (a new color) to the map"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6299
    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6300
    self addColorToColormap:(Color black) undoable:true
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6301
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6302
    "Modified: / 31-08-2017 / 14:30:32 / cg"
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  6303
!
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  6304
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  6305
addColorToColormap:newColor
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6306
    "undoable
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6307
     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
  6308
     (unless it is full).
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6309
     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
  6310
     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
  6311
     
1643
91b7ea254a3b some changes to support drawing into 24-bit images
Claus Gittinger <cg@exept.de>
parents: 1640
diff changeset
  6312
    |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
  6313
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6314
    img := self image.
1499
0c57ab09156b about menu items moved into the Help-menu
Claus Gittinger <cg@exept.de>
parents: 1496
diff changeset
  6315
    img isNil ifTrue:[
0c57ab09156b about menu items moved into the Help-menu
Claus Gittinger <cg@exept.de>
parents: 1496
diff changeset
  6316
        self warn:'No Image.'.
0c57ab09156b about menu items moved into the Help-menu
Claus Gittinger <cg@exept.de>
parents: 1496
diff changeset
  6317
        ^ self
0c57ab09156b about menu items moved into the Help-menu
Claus Gittinger <cg@exept.de>
parents: 1496
diff changeset
  6318
    ].
0c57ab09156b about menu items moved into the Help-menu
Claus Gittinger <cg@exept.de>
parents: 1496
diff changeset
  6319
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6320
    depth := img depth.
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6321
    cMap := img colorMap.
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  6322
    (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
  6323
        drawingColormap isNil ifTrue:[
1916
c91c39976bef *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1910
diff changeset
  6324
            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
  6325
            drawingColormap := OrderedCollection new.
91b7ea254a3b some changes to support drawing into 24-bit images
Claus Gittinger <cg@exept.de>
parents: 1640
diff changeset
  6326
        ].
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  6327
        drawingColormap add:newColor.
1643
91b7ea254a3b some changes to support drawing into 24-bit images
Claus Gittinger <cg@exept.de>
parents: 1640
diff changeset
  6328
        self listOfColors contents:drawingColormap.
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6329
        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
  6330
        "/ self warn:'Image has no colormap.\Change colorMap mode first.' withCRs.
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6331
        ^ self
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6332
    ].
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6333
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6334
    (cMap size == (1 bitShift:depth)) ifTrue:[
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6335
        depth >= 8 ifTrue:[
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6336
            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
  6337
            ^ self
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6338
        ].
1916
c91c39976bef *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1910
diff changeset
  6339
        (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
  6340
        ifFalse:[
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6341
            ^ self
1057
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  6342
        ].
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  6343
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  6344
        imageEditView makeUndo.
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  6345
        img mask notNil ifTrue:[
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  6346
            newMode := 'masked' , (depth*2) printString.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  6347
        ] ifFalse:[
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  6348
            newMode := 'depth' , (depth*2) printString.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  6349
        ].
1057
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  6350
        self colorMapMode:newMode.
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  6351
    ] ifFalse:[
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  6352
        imageEditView makeUndo.
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6353
    ].
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6354
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6355
    cMap := cMap asArray.
1643
91b7ea254a3b some changes to support drawing into 24-bit images
Claus Gittinger <cg@exept.de>
parents: 1640
diff changeset
  6356
    listOfColors := self listOfColors.
91b7ea254a3b some changes to support drawing into 24-bit images
Claus Gittinger <cg@exept.de>
parents: 1640
diff changeset
  6357
    oldCListSize := listOfColors size.
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6358
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  6359
    newColorMap := cMap copyWith:newColor.
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6360
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6361
    newImage := img species new
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6362
                    width:(img width) height:(img height) depth:depth
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6363
                    fromArray:img bits.
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6364
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6365
    newImage colorMap:newColorMap.  
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6366
    newImage fileName:img fileName.
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6367
    newImage mask:(img mask copy).
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6368
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6369
    (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
  6370
        listOfColors contents: newImage colorMap.
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6371
        self findColorMapMode.
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6372
        "/ 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
  6373
        listOfColors size > (oldCListSize + 1) ifTrue:[
91b7ea254a3b some changes to support drawing into 24-bit images
Claus Gittinger <cg@exept.de>
parents: 1640
diff changeset
  6374
            listOfColors removeLast
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6375
        ].
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6376
        self selectedColors value:{listOfColors size}.
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6377
        self updateLabelsAndHistory.
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6378
    ]
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6379
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  6380
    "Created: / 12-03-1999 / 00:20:28 / cg"
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6381
    "Modified: / 16-02-2017 / 10:17:25 / cg"
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6382
    "Modified (comment): / 31-08-2017 / 14:28:11 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6383
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6384
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6385
addColorToColormap:newColor undoable:undoable
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6386
    "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
  6387
     (unless it is full).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6388
     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
  6389
     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
  6390
     
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6391
    |depth img cMap newColorMap newImage oldCListSize newMode listOfColors|
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
    img := self image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6394
    img isNil ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6395
        self warn:'No Image.'.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6396
        ^ self
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6397
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6398
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6399
    depth := img depth.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6400
    cMap := img colorMap.
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6401
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6402
    (cMap notNil and:[cMap isMappedPalette or:[cMap isArray]]) ifTrue:[
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6403
    ] ifFalse:[
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6404
        (cMap isNil or:[cMap isFixedPalette]) ifTrue:[
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6405
            drawingColormap isNil ifTrue:[
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6406
                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
  6407
                drawingColormap := OrderedCollection new.
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6408
            ].
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6409
            drawingColormap add:newColor.
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6410
            self listOfColors contents:drawingColormap.
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6411
            self selectedColors value:{drawingColormap size}.
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6412
            "/ self warn:'Image has no colormap.\Change colorMap mode first.' withCRs.
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6413
            ^ self
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6414
        ].
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6415
    ].
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6416
    
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6417
    (cMap size == (1 bitShift:depth)) ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6418
        depth >= 8 ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6419
            self warn:'No space for more colors in colormap.'.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6420
            ^ self
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
        (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
  6423
        ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6424
            ^ self
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6425
        ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6426
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6427
        undoable ifTrue:[ imageEditView makeUndo ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6428
        img mask notNil ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6429
            newMode := 'masked' , (depth*2) printString.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6430
        ] ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6431
            newMode := 'depth' , (depth*2) printString.
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
        self colorMapMode:newMode.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6434
    ] ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6435
        undoable ifTrue:[ imageEditView makeUndo ].
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6438
    cMap := cMap asArray.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6439
    listOfColors := self listOfColors.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6440
    oldCListSize := listOfColors size.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6441
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6442
    newColorMap := cMap copyWith:newColor.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6443
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6444
    newImage := img species new
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6445
                    width:(img width) height:(img height) depth:depth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6446
                    fromArray:img bits.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6447
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6448
    newImage colorMap:newColorMap.  
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6449
    newImage fileName:img fileName.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6450
    newImage mask:(img mask copy).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6451
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6452
    (imageEditView image:newImage) notNil ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6453
        listOfColors contents: newImage colorMap.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6454
        self findColorMapMode.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6455
        "/ 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
  6456
        listOfColors size > (oldCListSize + 1) ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6457
            listOfColors removeLast
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6458
        ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6459
        self selectedColors value:{listOfColors size}.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6460
        self updateLabelsAndHistory.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6461
    ]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6462
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6463
    "Created: / 31-08-2017 / 14:30:01 / cg"
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6464
    "Modified: / 08-10-2017 / 09:15:10 / cg"
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6465
!
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
addPastedColorToColormap
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6468
    "undoable: add the color in the clipboard to the map"
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
    |clipBoardColor|
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
    (clipBoardColor := self clipBoardColor) isNil ifTrue:[                
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6473
        ^ self
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6474
    ].
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6475
    self addColorToColormap:clipBoardColor undoable:true
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6476
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6477
    "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
  6478
!
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6479
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6480
changeHLS
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6481
    "interactive Hue/Light/Saturation editing with thumbWheels"
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6482
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6483
    |bindings hueShift lightValue saturationValue originalColormap firstChange acceptChannel 
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6484
     shiftAction originalAvgColor avgColorHolder avgColor shiftedColor shiftProcess readySema
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6485
     originalPixels p previewImage previewImageHolder originalPreviewColormap originalPreviewPixels
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6486
     anyChange |
1652
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6487
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6488
    avgColorHolder := nil asValue.
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6489
    previewImageHolder := nil asValue.
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6490
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6491
    "/
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6492
    "/ 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
  6493
    "/
1652
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6494
    readySema := Semaphore new.
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6495
    [
1923
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6496
        |image|
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6497
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6498
        image := imageEditView image.
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6499
        originalColormap := image colorMap copy.
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6500
        originalPixels := image bits.
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6501
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6502
        previewImage := self image magnifiedPreservingRatioTo:100@100.
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6503
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6504
        avgColor := originalAvgColor := previewImage "image" averageColor.
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6505
        avgColorHolder value:avgColor.
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6506
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6507
        previewImageHolder value: previewImage.
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6508
        originalPreviewColormap := previewImage colorMap copy.
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6509
        originalPreviewPixels := previewImage bits.
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6510
1652
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6511
        readySema signal.
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6512
    ] forkAt:7.
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6513
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6514
    acceptChannel := TriggerValue new.
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6515
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6516
    firstChange := true.
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6517
    anyChange := false.
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6518
1651
577ddbd9fb26 better hls color display
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  6519
    shiftedColor := [:clr :hShift :lFactor :sFactor |
577ddbd9fb26 better hls color display
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  6520
                        Color 
577ddbd9fb26 better hls color display
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  6521
                                hue:((clr hue) ? 0 + hShift) 
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6522
                                light:((clr light * (lFactor/100)) min:100)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6523
                                saturation:((clr saturation * (sFactor/100)) min:100)].
1652
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6524
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6525
    shiftAction := 
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6526
        [
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6527
            |hShift lFactor sFactor|
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6528
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6529
            acceptChannel value:true.
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6530
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6531
            firstChange ifTrue:[
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6532
                imageEditView makeUndo.
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6533
                firstChange := false.
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6534
                anyChange := true.
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6535
            ].
1652
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6536
            readySema notNil ifTrue:[readySema wait. readySema := nil].
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6537
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6538
            hShift := hueShift value.
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6539
            lFactor := lightValue value.
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6540
            sFactor := saturationValue value.
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6541
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6542
            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
  6543
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6544
            previewImage
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6545
                colorMap:originalPreviewColormap copy;
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6546
                bits:originalPreviewPixels copy;
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6547
                release;
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6548
                colorMapProcessing:[:clr | shiftedColor value:clr value:hShift value:lFactor value:sFactor].
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6549
            previewImageHolder value:nil; value:previewImage.
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6550
1652
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6551
            shiftProcess notNil ifTrue:[
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6552
                shiftProcess terminate.
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6553
                shiftProcess waitUntilTerminated.
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6554
                shiftProcess := nil.
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6555
            ].
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6556
            shiftProcess := 
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6557
                [
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6558
                    [
1656
f5c0716efd78 menu labels
Claus Gittinger <cg@exept.de>
parents: 1652
diff changeset
  6559
                        imageEditView image 
f5c0716efd78 menu labels
Claus Gittinger <cg@exept.de>
parents: 1652
diff changeset
  6560
                            colorMap:originalColormap copy;
1923
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6561
                            bits:originalPixels copy;
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6562
                            release;
1656
f5c0716efd78 menu labels
Claus Gittinger <cg@exept.de>
parents: 1652
diff changeset
  6563
                            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
  6564
                        self updateImage.
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6565
                        self updateInfoLabel.
1923
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6566
                        self updateImagePreView.
1652
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6567
                    ] ensure:[ shiftProcess := nil ].    
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6568
                ] forkAt:7.
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6569
        ].
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6570
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6571
    bindings := IdentityDictionary new.
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6572
    bindings at:#hueShiftAmount put:(hueShift := 0 asValue).
1656
f5c0716efd78 menu labels
Claus Gittinger <cg@exept.de>
parents: 1652
diff changeset
  6573
    hueShift onChangeEvaluate:shiftAction.
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6574
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6575
    bindings at:#lightAmount put:(lightValue := 100 asValue).
1656
f5c0716efd78 menu labels
Claus Gittinger <cg@exept.de>
parents: 1652
diff changeset
  6576
    lightValue onChangeEvaluate:shiftAction.
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6577
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6578
    bindings at:#saturationAmount put:(saturationValue := 100 asValue).
1656
f5c0716efd78 menu labels
Claus Gittinger <cg@exept.de>
parents: 1652
diff changeset
  6579
    saturationValue onChangeEvaluate:shiftAction.
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6580
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6581
    bindings at:#acceptChannel put:acceptChannel.
1652
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6582
    bindings at:#hlsColor put:avgColorHolder.
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6583
    bindings at:#previewImageHolder put:previewImageHolder.
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6584
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6585
    (self openDialogInterface:#changeHLSDialogSpec withBindings:bindings) 
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6586
    ifFalse:[ 
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6587
        anyChange ifTrue:[
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6588
            imageEditView undo
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6589
        ]
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6590
    ].
1923
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6591
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6592
    (p := shiftProcess) notNil ifTrue:[
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6593
        p waitUntilTerminated.
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6594
    ].
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6595
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6596
    anyChange ifTrue:[
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6597
        self updateImage.
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6598
        self updateImagePreView.
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6599
    ].
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6600
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6601
    "Modified: / 28-08-2017 / 13:05:35 / cg"
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6602
!
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6603
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6604
changeHLSOfColors:colorsToShift
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6605
    "interactive Hue/Light/Saturation editing"
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
    |bindings hueShift lightValue saturationValue originalColormap firstChange acceptChannel 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6608
     shiftAction avgColorHolder avgColor shiftedColor shiftProcess readySema
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6609
     originalPixels p previewImage previewImageHolder originalPreviewColormap originalPreviewPixels
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6610
     anyChange |
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6611
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6612
    avgColorHolder := nil asValue.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6613
    previewImageHolder := nil asValue.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6614
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6615
    "/
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6616
    "/ 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
  6617
    "/
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6618
    readySema := Semaphore new.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6619
    [
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6620
        |image red green blue|
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6621
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6622
        image := imageEditView image.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6623
        originalColormap := image colorMap copy.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6624
        originalPixels := image bits.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6625
        red := (colorsToShift collect:[:clr | clr red]) average.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6626
        green := (colorsToShift collect:[:clr | clr green]) average.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6627
        blue := (colorsToShift collect:[:clr | clr blue]) average.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6628
        avgColor := Color red:red green:green blue:blue.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6629
        avgColorHolder value:avgColor.
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
        previewImage := self image magnifiedPreservingRatioTo:100@100.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6632
        previewImageHolder value: previewImage.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6633
        originalPreviewColormap := previewImage colorMap copy.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6634
        originalPreviewPixels := previewImage bits.
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
        readySema signal.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6637
    ] forkAt:7.
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
    acceptChannel := TriggerValue new.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6640
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6641
    firstChange := true.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6642
    anyChange := false.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6643
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6644
    shiftedColor := [:clr :hShift :lFactor :sFactor |
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6645
                        Color 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6646
                                hue:((clr hue) ? 0 + hShift) 
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6647
                                light:((clr light * lFactor) min:100)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6648
                                saturation:((clr saturation * sFactor) min:100)].
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6649
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6650
    shiftAction := 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6651
        [
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6652
            |hShift lFactor sFactor|
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6653
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6654
            acceptChannel value: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
            firstChange ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6657
                imageEditView makeUndo.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6658
                firstChange := false.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6659
                anyChange := true.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6660
            ].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6661
            readySema notNil ifTrue:[readySema wait. readySema := nil].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6662
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6663
            hShift := hueShift value.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6664
            lFactor := lightValue value.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6665
            sFactor := saturationValue value.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6666
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6667
            avgColorHolder value:(shiftedColor value:avgColor value:hShift value:lFactor value:sFactor).
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6668
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6669
            previewImage
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6670
                colorMap:originalPreviewColormap copy;
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6671
                bits:originalPreviewPixels copy;
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6672
                release;
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6673
                colorMapProcessing:[:clr | 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6674
                    (colorsToShift includes:clr) ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6675
                        shiftedColor value:clr value:hShift value:lFactor value:sFactor.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6676
                    ] ifFalse:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6677
                        clr
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6678
                    ]
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6679
                ].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6680
            previewImageHolder value:nil; value:previewImage.
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
            shiftProcess notNil ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6683
                shiftProcess terminate.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6684
                shiftProcess waitUntilTerminated.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6685
                shiftProcess := nil.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6686
            ].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6687
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6688
            shiftProcess := 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6689
                [
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6690
                    [
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6691
                        imageEditView image 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6692
                            colorMap:originalColormap copy;
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6693
                            bits:originalPixels copy;
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6694
                            release;
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6695
                            colorMapProcessing:[:clr | 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6696
                                (colorsToShift includes:clr) ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6697
                                    shiftedColor value:clr value:hShift value:lFactor value:sFactor.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6698
                                ] ifFalse:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6699
                                    clr
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6700
                                ]
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6701
                            ].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6702
                        self updateImage.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6703
                        self updateInfoLabel.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6704
                        self updateImagePreView.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6705
                    ] ensure:[ shiftProcess := nil ].    
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6706
                ] forkAt:7.
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
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6709
    bindings := IdentityDictionary new.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6710
    bindings at:#hueShiftAmount put:(hueShift := 0 asValue).
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6711
    hueShift onChangeEvaluate:shiftAction.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6712
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6713
    bindings at:#lightAmount put:(lightValue := 100 asValue).
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6714
    lightValue onChangeEvaluate:shiftAction.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6715
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6716
    bindings at:#saturationAmount put:(saturationValue := 100 asValue).
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6717
    saturationValue onChangeEvaluate:shiftAction.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6718
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6719
    bindings at:#acceptChannel put:acceptChannel.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6720
    bindings at:#hlsColor put:avgColorHolder.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6721
    bindings at:#previewImageHolder put:previewImageHolder.
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
    (self openDialogInterface:#changeHLSDialogSpec withBindings:bindings) 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6724
    ifFalse:[ 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6725
        anyChange ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6726
            imageEditView undo
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
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6730
    (p := shiftProcess) notNil ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6731
        p waitUntilTerminated.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6732
    ].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6733
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6734
    anyChange ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6735
        self updateImage.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6736
        self updateImagePreView.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6737
    ].
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6738
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6739
    "Modified (comment): / 28-08-2017 / 13:04:44 / cg"
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6740
!
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6741
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6742
clearColormapEntry0AndMaskedPixels
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6743
    "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
  6744
     0 and then clear all masked pixels (to pixelValue 0).
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6745
     This is required for windows icons to be really transparent"
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6746
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6747
    |index colorMap| 
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6748
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6749
    self nonUndoableCompressColorMap.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6750
    
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6751
    colorMap := self image colorMap.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6752
    (colorMap includes:(Color black)) ifFalse:[
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6753
        self addColorToColormap:(Color black) undoable:false.
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
    ].
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6756
    index := colorMap indexOf:(Color black).
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6757
    index == 1 ifFalse:[
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6758
        self nonUndoableSortColorMapWith:self sortBlockForColorsByRGB.
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6759
        colorMap := self image colorMap.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6760
    ].
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6761
    self nonUndoableClearMaskedPixels
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6762
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6763
    "Modified: / 31-08-2017 / 14:30:28 / cg"
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6764
!
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6765
1403
26707fae4b93 compressColorMap
Claus Gittinger <cg@exept.de>
parents: 1398
diff changeset
  6766
clearMaskedPixels
26707fae4b93 compressColorMap
Claus Gittinger <cg@exept.de>
parents: 1398
diff changeset
  6767
    "clear all masked pixels (to pixelValue 0)"
26707fae4b93 compressColorMap
Claus Gittinger <cg@exept.de>
parents: 1398
diff changeset
  6768
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6769
    |newImage| 
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6770
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6771
    newImage := self image clearMaskedPixels.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6772
    0 to:newImage height - 1 do:[:y |
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6773
        0 to:newImage width - 1 do:[:x |
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6774
            (newImage maskAtX:x y:y) == 0 ifTrue:[
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6775
                newImage pixelAtX:x y:y put:0
1460
89549732a2c8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1459
diff changeset
  6776
            ]
1403
26707fae4b93 compressColorMap
Claus Gittinger <cg@exept.de>
parents: 1398
diff changeset
  6777
        ]
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6778
    ].
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6779
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6780
    (imageEditView image:newImage) notNil ifTrue:[
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6781
        self fetchImageData.
1403
26707fae4b93 compressColorMap
Claus Gittinger <cg@exept.de>
parents: 1398
diff changeset
  6782
    ]
26707fae4b93 compressColorMap
Claus Gittinger <cg@exept.de>
parents: 1398
diff changeset
  6783
!
26707fae4b93 compressColorMap
Claus Gittinger <cg@exept.de>
parents: 1398
diff changeset
  6784
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6785
clipBoardColor
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6786
    "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
  6787
     If there is none, beep (if user's settings allow it)"
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6788
     
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6789
    |clr|
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
    clr := imageEditView getClipboardObject.
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6792
    clr isColor ifFalse:[
3526
d27e02006468 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3513
diff changeset
  6793
        self beepInEditor.
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6794
        ^ nil
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6795
    ].
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6796
    ^ clr
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6797
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6798
    "Created: / 08-10-2017 / 09:02:14 / cg"
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6799
!
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6800
945
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  6801
colorMapChanged
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  6802
    |img|
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  6803
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  6804
    img := self image.
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  6805
    img release.
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  6806
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  6807
    self imageEditView invalidate.
960
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6808
    self imagePreView invalidate.
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6809
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6810
"/    (imageEditView image:img) notNil ifTrue:[
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6811
"/        self updateLabelsAndHistory.
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6812
"/        self imagePreView image:img
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6813
"/    ]
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
    "Created: / 7.8.1998 / 22:26:10 / cg"
960
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6816
    "Modified: / 18.8.1998 / 17:08:55 / cg"
945
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  6817
!
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  6818
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  6819
colorMapMode:aMode
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6820
    "calculates a new color map for the image from aMode.
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6821
     This might involve the computation of a colormap 
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6822
     (if depth is smaller)"
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6823
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6824
    |depth numColors newColorMap newImage 
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6825
     oldImage image newColors realColorMap oldFileName
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  6826
     usedColors useNearest usageCounts tmpBits tmpMap quest
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  6827
     prevMode maskThreshold maskImage| 
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6828
3433
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  6829
    oldImage := self image.
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  6830
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  6831
    "/ rubbish; the mode is already changed
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  6832
    "/ prevMode := colorMapMode value.
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  6833
    prevMode := self colorMapModeFromImage:oldImage. 
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  6834
    prevMode == aMode ifTrue:[^ self].
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  6835
    
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6836
    self withExecuteCursorDo:[
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6837
        newColorMap := self class listOfColorMaps at:aMode.
3230
Claus Gittinger <cg@exept.de>
parents: 3227
diff changeset
  6838
        (aMode == #depth32 or:[aMode == #masked32]) ifTrue:[
2572
1c09be361688 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2571
diff changeset
  6839
            depth := 32. 
1c09be361688 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2571
diff changeset
  6840
        ] ifFalse:[
3230
Claus Gittinger <cg@exept.de>
parents: 3227
diff changeset
  6841
            (aMode == #depth24 or:[aMode == #masked24]) ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 3227
diff changeset
  6842
                depth := 24. 
Claus Gittinger <cg@exept.de>
parents: 3227
diff changeset
  6843
            ] ifFalse:[
3370
c88532134a2b #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3367
diff changeset
  6844
                (aMode == #depth16 or:[aMode == #masked16]) ifTrue:[
c88532134a2b #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3367
diff changeset
  6845
                    depth := 16. 
c88532134a2b #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3367
diff changeset
  6846
                ] ifFalse:[
c88532134a2b #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3367
diff changeset
  6847
                    depth := (newColorMap size log:2) asInteger. 
c88532134a2b #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3367
diff changeset
  6848
                ].
3230
Claus Gittinger <cg@exept.de>
parents: 3227
diff changeset
  6849
            ].
2572
1c09be361688 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2571
diff changeset
  6850
        ].
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6851
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6852
        useNearest := false.
928
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  6853
        depth == 1 ifTrue:[
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  6854
            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
  6855
        ] ifFalse:[
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  6856
            prevMode isNil ifTrue:[
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  6857
                quest := 'Compute colormap (or use standard)'
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  6858
            ] ifFalse:[
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  6859
                quest := 'Keep colormap (or use standard)'
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  6860
            ]
928
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  6861
        ].
3433
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  6862
        
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  6863
        "/ currently always true!!
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  6864
        ((prevMode = aMode)
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6865
          or:[depth > oldImage depth
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6866
          or:[true "self confirm:(resources string:quest)"]]
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6867
        ) ifTrue:[
1937
73fb270a4da9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1936
diff changeset
  6868
            (newColorMap isOrderedCollection or:[newColorMap isFixedPalette not]) ifTrue:[
1935
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6869
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6870
                "/ keep the colormap
3355
47dfcea38127 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3349
diff changeset
  6871
                "/ newColorMap atAllPut:Color black.
1935
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6872
                depth > oldImage depth ifTrue:[
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6873
                    "/ easy - simply copy the part
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6874
                    numColors := 1 bitShift:oldImage depth.
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6875
                    0 to:numColors-1 do:[:pixel |
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6876
                        newColorMap at:(pixel+1) put:(oldImage colorFromValue:pixel)
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  6877
                    ].
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6878
                ] ifFalse:[
1935
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6879
                    "/ see if all used color fit the new colormap
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6880
                    usedColors := oldImage usedColorsMax:(1 bitShift:depth).
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
                        usedColors := oldImage realUsedColors
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6883
                    ].
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6884
                    (usedColors notNil and:[usedColors size <= (1 bitShift:depth)]) ifTrue:[
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6885
                        "/ yea - just install them
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6886
                        usedColors asArray keysAndValuesDo:[:idx :clr |
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6887
                            newColorMap at:idx put:clr
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6888
                        ].
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6889
                    ] ifFalse:[
1935
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6890
                        "/ copy over those that are most often used.
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6891
                        oldImage depth < 8 ifTrue:[
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6892
                            tmpBits := ByteArray uninitializedNew:(oldImage width*oldImage height).
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6893
                            oldImage bits
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6894
                                expandPixels:(oldImage depth)
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6895
                                width:oldImage width
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6896
                                height:oldImage height 
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6897
                                into:tmpBits
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6898
                                mapping:nil.
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
  6899
                        ] ifFalse:[
1935
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6900
                            oldImage depth == 8 ifTrue:[
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6901
                                tmpBits := oldImage bits
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6902
                            ] ifFalse:[
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6903
                                colorMapMode value:prevMode.
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6904
                                self findColorMapMode.    
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6905
                                self warn:(resources 
3506
86a5f1bf58fe #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3505
diff changeset
  6906
                                            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
  6907
                                            with: oldImage realUsedColors size ).
1935
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
    "/                            (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
  6910
    "/                            ifFalse:[.
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
    "/                            self image: (Image newForDepth:depth) fromImage:oldImage.
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6914
    "/                            ^ self.
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6915
                            ]
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6916
                        ].
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6917
                        usageCounts := tmpBits usageCounts.
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6918
                        tmpMap := Array new:usageCounts size.
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6919
                        oldImage colorMap asArray keysAndValuesDo:[:i :clr |
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6920
                            tmpMap at:i put:clr
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6921
                        ].
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6922
                        usageCounts sort:[:a :b | a > b] with:tmpMap.
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
                        1 to:(1 bitShift:depth) do:[:idx |
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6925
                            newColorMap at:idx put:(tmpMap at:idx)
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6926
                        ].
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6927
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6928
                        useNearest := Dialog 
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6929
                                            confirmWithCancel:(resources 
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6930
                                                                  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
  6931
                                                                  with:usedColors size
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6932
                                                                  with:(1 bitShift:depth))
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6933
                                            labels:(resources array:#('Cancel' 'First' 'Nearest')).
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6934
                        useNearest isNil ifTrue:[
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  6935
                            colorMapMode value:prevMode.
1935
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6936
                            ^ self   "/ cancel
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6937
                        ].
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  6938
                    ]
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6939
                ]
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6940
            ]
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6941
        ] ifFalse:[
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6942
            "/ standard colormap
921
a5aca21ea803 also allow nearest-color mode for standard colormap.
Claus Gittinger <cg@exept.de>
parents: 920
diff changeset
  6943
            usedColors := oldImage usedColors.
a5aca21ea803 also allow nearest-color mode for standard colormap.
Claus Gittinger <cg@exept.de>
parents: 920
diff changeset
  6944
            (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
  6945
                useNearest := Dialog 
928
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  6946
                                    confirmWithCancel:(resources 
1916
c91c39976bef *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1910
diff changeset
  6947
                                                           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
  6948
                                                       ) 
3505
a7aec486480c #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3497
diff changeset
  6949
                                    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
  6950
                useNearest isNil ifTrue:[
1542
76c2549d878f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1537
diff changeset
  6951
                    colorMapMode value:prevMode.
921
a5aca21ea803 also allow nearest-color mode for standard colormap.
Claus Gittinger <cg@exept.de>
parents: 920
diff changeset
  6952
                    ^ self   "/ cancel
a5aca21ea803 also allow nearest-color mode for standard colormap.
Claus Gittinger <cg@exept.de>
parents: 920
diff changeset
  6953
                ].
a5aca21ea803 also allow nearest-color mode for standard colormap.
Claus Gittinger <cg@exept.de>
parents: 920
diff changeset
  6954
            ].
3356
10e247f059f1 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3355
diff changeset
  6955
            newColorMap := oldImage colorMap.
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6956
        ].
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6957
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6958
        imageEditView makeUndo.
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6959
2260
9a6345ae1c56 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2249
diff changeset
  6960
        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
  6961
        newImage depth:depth.
3230
Claus Gittinger <cg@exept.de>
parents: 3227
diff changeset
  6962
        depth >= 16 ifTrue:[
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6963
            newImage colorMap:nil. 
3230
Claus Gittinger <cg@exept.de>
parents: 3227
diff changeset
  6964
            depth == 32 ifTrue:[
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6965
                newImage samplesPerPixel:4; photometric:#rgba.
3230
Claus Gittinger <cg@exept.de>
parents: 3227
diff changeset
  6966
            ] ifFalse:[    
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6967
                newImage samplesPerPixel:3; photometric:#rgb.
3230
Claus Gittinger <cg@exept.de>
parents: 3227
diff changeset
  6968
            ].    
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6969
        ].   
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6970
        "/ newImage photometric:oldImage photometric.
2260
9a6345ae1c56 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2249
diff changeset
  6971
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6972
        oldFileName := oldImage fileName.
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6973
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  6974
        Image imageErrorSignal handle:[:ex|
3227
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  6975
            "/ arrive here only if not all colors can be represented;
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  6976
            "/ then do a more expensive nearest color search
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  6977
            Color colorErrorSignal handle:[:ex|
1542
76c2549d878f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1537
diff changeset
  6978
                colorMapMode value:prevMode.
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6979
                imageEditView undo.
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  6980
                ^ self warn:(resources string:'Conversion failed !!')
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  6981
            ] do:[
1393
c4a11a7d407f use Image>>newForDepth:
Claus Gittinger <cg@exept.de>
parents: 1392
diff changeset
  6982
                newImage := Image newForDepth:depth.
3103
690eff6e417e class: ImageEditor
Stefan Vogel <sv@exept.de>
parents: 3100
diff changeset
  6983
                newImage 
690eff6e417e class: ImageEditor
Stefan Vogel <sv@exept.de>
parents: 3100
diff changeset
  6984
                    width:oldImage width height:oldImage height depth:depth;
690eff6e417e class: ImageEditor
Stefan Vogel <sv@exept.de>
parents: 3100
diff changeset
  6985
                    colorMap:newColorMap;
690eff6e417e class: ImageEditor
Stefan Vogel <sv@exept.de>
parents: 3100
diff changeset
  6986
                    photometric:#palette;
690eff6e417e class: ImageEditor
Stefan Vogel <sv@exept.de>
parents: 3100
diff changeset
  6987
                    bits:(ByteArray new:(newImage bytesPerRow * newImage height));
690eff6e417e class: ImageEditor
Stefan Vogel <sv@exept.de>
parents: 3100
diff changeset
  6988
                    mask:oldImage mask.
2260
9a6345ae1c56 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2249
diff changeset
  6989
3227
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  6990
                oldImage 
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  6991
                    colorsFromX:0 y:0 
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  6992
                    toX:(oldImage width-1) y:(oldImage height-1) 
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  6993
                    do:[:x :y :clr |
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  6994
                        |newColor|
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  6995
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  6996
                        (newColorMap includes:clr)
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  6997
                            ifTrue: [newColor := clr]
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  6998
                            ifFalse: [
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  6999
                                newColor := clr nearestIn:newColorMap.
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7000
                                useNearest ifFalse:[
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7001
                                    (newColor deltaFrom:clr) > 0.5 ifTrue:[
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7002
                                        newColor := oldImage colorFromValue:0
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7003
                                    ]
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7004
                                ]
3227
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7005
                            ].
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7006
                        newImage colorAtX:x y:y put:newColor.
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7007
                    ].
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7008
                
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7009
                image := newImage
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7010
            ].
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7011
        ] do:[ 
3461
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7012
            |newPhotometric|
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7013
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7014
            depth == 32 ifTrue:[
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7015
                newPhotometric := #rgba.
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7016
            ] ifFalse:[
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7017
                (newColorMap notNil and:[newColorMap isOrderedCollection or:[newColorMap isFixedPalette not]]) ifTrue:[
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7018
                    newPhotometric := #palette
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7019
                ]
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7020
            ]. 
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7021
            image := newImage fromImage:oldImage photometric:newPhotometric.
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7022
            "/ -- 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
  7023
        ].
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7024
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7025
        (aMode asString startsWith:'mask') ifTrue:[
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7026
            image mask isNil ifTrue:[
3436
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7027
                (oldImage depth == 32 and:[ oldImage photometric == #rgba ]) ifTrue:[
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7028
                    maskImage := ImageMask fromAlphaInImage:oldImage
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7029
                ] ifFalse:[    
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7030
                    false "(Dialog confirm:'Generate mask from black ?' default:false)" ifTrue:[
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7031
                        maskThreshold := 0.1.
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7032
                        maskImage := Depth1Image fromImage:(image asThresholdMonochromeImage:maskThreshold). 
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7033
                    ] ifFalse:[
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7034
                        maskImage := ImageMask extent:image extent.
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7035
                        maskImage bits:(ByteArray 
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7036
                                            new:(maskImage bytesPerRow * maskImage height)
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7037
                                            withAll:16rFF).
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7038
                    ].
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7039
                ].
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7040
                image mask:maskImage.
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7041
            ].
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7042
        ] ifFalse:[ 
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7043
            image mask: nil.
3317
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  7044
            oldImage mask notNil ifTrue:[
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  7045
                newImage depth == 32 ifTrue:[
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  7046
                    newImage computeAlphaValuesFromMask:oldImage mask
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  7047
                ].
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  7048
            ].
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7049
        ]. 
1935
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7050
1937
73fb270a4da9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1936
diff changeset
  7051
        (newColorMap isOrderedCollection or:[newColorMap isFixedPalette not]) ifTrue:[
1935
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7052
            realColorMap := OrderedCollection new.
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7053
            image realColorMap do:[:clr|
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7054
                (realColorMap includes: clr) ifFalse: [realColorMap add: clr]
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7055
            ].
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7056
            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
  7057
            newColorMap do:[:clr|
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7058
                ((newColors size < newColorMap size) and: [(newColors includes: clr) not]) 
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7059
                ifTrue:[      
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7060
                    newColors add: clr
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7061
                ]
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7062
            ].                  
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7063
            image colorMap: newColors.   
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7064
        ].
1446
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7065
        image fileName: oldFileName.
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7066
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  7067
        (imageEditView image: image) notNil ifTrue:[
1446
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7068
            self fetchImageData.
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7069
        ]
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
3506
86a5f1bf58fe #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3505
diff changeset
  7072
    "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
  7073
!
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7074
2192
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7075
colorize
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7076
    "interactive Hue editing"
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7077
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7078
    |bindings hueShift lightValue saturationValue originalColormap firstChange acceptChannel 
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7079
     shiftAction avgColorHolder avgColor shiftedColor shiftProcess readySema
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7080
     originalPixels p|
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
    "/ compute the averageColor in the background (while asking user)
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7083
    readySema := Semaphore new.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7084
    [
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7085
        |image|
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7086
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7087
        image := imageEditView image.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7088
        originalColormap := image colorMap copy.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7089
        avgColor := image averageColor.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7090
        originalPixels := image bits.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7091
        readySema signal.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7092
    ] forkAt:7.
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
    acceptChannel := TriggerValue new.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7095
    avgColorHolder := avgColor asValue.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7096
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7097
    firstChange := true.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7098
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7099
    shiftedColor := [:clr :hShift :lFactor :sFactor |
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7100
                        Color 
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7101
                                hue:((clr hue) ? 0 + hShift) 
3173
801e6bfe2581 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3172
diff changeset
  7102
                                light:((clr light * lFactor / 100) min:100)
801e6bfe2581 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3172
diff changeset
  7103
                                saturation:(((clr saturation max:20) * sFactor / 100) min:100)].
2192
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
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7106
    shiftAction := 
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7107
        [
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7108
            |hShift lFactor sFactor|
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7109
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7110
            acceptChannel value:true.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7111
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7112
            firstChange ifTrue:[
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7113
                imageEditView makeUndo.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7114
                firstChange := false.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7115
            ].
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7116
            readySema notNil ifTrue:[readySema wait. readySema := nil].
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7117
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7118
            hShift := hueShift value.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7119
            lFactor := lightValue value.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7120
            sFactor := saturationValue value.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7121
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7122
            avgColorHolder value:(shiftedColor value:avgColor value:hShift value:lFactor value:sFactor).
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7123
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7124
            shiftProcess notNil ifTrue:[
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7125
                shiftProcess terminate.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7126
                shiftProcess waitUntilTerminated.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7127
                shiftProcess := nil.
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
            shiftProcess := 
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7130
                [
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7131
                    [
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7132
                        imageEditView image 
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7133
                            colorMap:originalColormap copy;
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7134
                            bits:originalPixels copy;
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7135
                            release;
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7136
                            colorMapProcessing:[:clr | shiftedColor value:clr value:hShift value:lFactor value:sFactor].
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7137
                        self updateImage.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7138
                        self updateInfoLabel.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7139
                        self updateImagePreView.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7140
                    ] ensure:[ shiftProcess := nil ].    
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7141
                ] forkAt:7.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7142
        ].
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7143
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7144
    bindings := IdentityDictionary new.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7145
    bindings at:#hueShiftAmount put:(hueShift := 0 asValue).
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7146
    hueShift 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:#lightAmount put:(lightValue := 100 asValue).
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7149
    lightValue 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:#saturationAmount put:(saturationValue := 100 asValue).
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7152
    saturationValue onChangeEvaluate:shiftAction.
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
    bindings at:#acceptChannel put:acceptChannel.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7155
    bindings at:#hlsColor put:avgColorHolder.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7156
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7157
    (self openDialogInterface:#changeHLSDialogSpec withBindings:bindings) 
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7158
    ifFalse:[ 
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7159
        firstChange ~~ true ifTrue:[
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7160
            imageEditView undo
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7161
        ]
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7162
    ].
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
    (p := shiftProcess) notNil ifTrue:[
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7165
        p waitUntilTerminated.
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
    self updateImage.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7168
    self updateImagePreView.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7169
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7170
    "Created: / 01-11-2007 / 23:27:37 / cg"
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7171
!
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7172
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7173
compressColorMap
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7174
    "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
  7175
2893
feb4eeba44ad changed:
Stefan Vogel <sv@exept.de>
parents: 2884
diff changeset
  7176
    |newImage| 
feb4eeba44ad changed:
Stefan Vogel <sv@exept.de>
parents: 2884
diff changeset
  7177
feb4eeba44ad changed:
Stefan Vogel <sv@exept.de>
parents: 2884
diff changeset
  7178
    newImage := self image.
feb4eeba44ad changed:
Stefan Vogel <sv@exept.de>
parents: 2884
diff changeset
  7179
    newImage compressColorMap.
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7180
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7181
    (imageEditView image:newImage) notNil ifTrue:[
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7182
        self fetchImageData.
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7183
    ]
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7184
!
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7185
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7186
copyColorFromColormap
1871
42729969c032 set selection interface changed
ca
parents: 1859
diff changeset
  7187
    imageEditView setClipboardObject:(self selectedColorOrNil)
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7188
!
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7189
2174
7beca4d9c93a color-double-click
Claus Gittinger <cg@exept.de>
parents: 2155
diff changeset
  7190
doubleClickOnColor:aColorIndex
7beca4d9c93a color-double-click
Claus Gittinger <cg@exept.de>
parents: 2155
diff changeset
  7191
    self editSelectedColor.
7beca4d9c93a color-double-click
Claus Gittinger <cg@exept.de>
parents: 2155
diff changeset
  7192
7beca4d9c93a color-double-click
Claus Gittinger <cg@exept.de>
parents: 2155
diff changeset
  7193
    "Created: / 22-07-2007 / 13:14:37 / cg"
7beca4d9c93a color-double-click
Claus Gittinger <cg@exept.de>
parents: 2155
diff changeset
  7194
!
7beca4d9c93a color-double-click
Claus Gittinger <cg@exept.de>
parents: 2155
diff changeset
  7195
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7196
editSelectedColor
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7197
    self processSelectedColorWith:[:clr | 
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7198
        |editor|
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7199
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7200
        editor := ColorEditDialog new.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7201
        editor color:clr.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7202
        editor open.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7203
        editor accepted ifFalse:[
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7204
            AbortOperationRequest raise.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7205
        ].
3180
9ee8f0e74b96 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3173
diff changeset
  7206
        editor color
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7207
    ]
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7208
!
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7209
1446
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7210
fetchImageData
1460
89549732a2c8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1459
diff changeset
  7211
    |image|
89549732a2c8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1459
diff changeset
  7212
89549732a2c8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1459
diff changeset
  7213
    (image := imageEditView image) notNil ifTrue:[
89549732a2c8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1459
diff changeset
  7214
        self findColorMapMode.
89549732a2c8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1459
diff changeset
  7215
        self updateLabelsAndHistory.
3463
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7216
        self updateInfoLabel.
1460
89549732a2c8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1459
diff changeset
  7217
    ]
3463
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7218
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7219
    "Modified: / 24-08-2017 / 18:20:37 / cg"
1446
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7220
!
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7221
1544
1048b548abfa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1542
diff changeset
  7222
inspectColor
2573
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7223
    |clrIndex clr|
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7224
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7225
    self hasColormap ifFalse:[
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7226
        clr := self selectedColorOrNil
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7227
    ] ifTrue:[
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7228
        clrIndex := self selectedColorIndexOrNil.
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7229
        clrIndex isNil ifTrue:[
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7230
            ^ self
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7231
        ].
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7232
        clr := self image colorFromValue:clrIndex-1
1544
1048b548abfa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1542
diff changeset
  7233
    ].
2573
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7234
    clr inspect
1544
1048b548abfa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1542
diff changeset
  7235
!
1048b548abfa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1542
diff changeset
  7236
2651
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  7237
inspectColormap
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  7238
    self hasColormap ifTrue:[
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  7239
        self image colorMap inspect
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  7240
    ].
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  7241
!
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  7242
1598
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  7243
makeBrighter
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7244
    self updateImageAfterDoing:#makeBrighter.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7245
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7246
    "Modified: / 31-08-2017 / 12:16:30 / cg"
1598
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  7247
!
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  7248
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  7249
makeDarker
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7250
    self updateImageAfterDoing:#makeDarker.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7251
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7252
    "Modified: / 31-08-2017 / 12:16:24 / cg"
1598
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  7253
!
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  7254
1926
b3d2dab90f9b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1925
diff changeset
  7255
makeGrayScaleImage
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7256
    self updateImageAfterDoing:#makeGrayScaleImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7257
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7258
    "Modified: / 31-08-2017 / 12:16:15 / cg"
1436
180804d7c28f added make grayScale
Claus Gittinger <cg@exept.de>
parents: 1435
diff changeset
  7259
!
180804d7c28f added make grayScale
Claus Gittinger <cg@exept.de>
parents: 1435
diff changeset
  7260
1446
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7261
makeSelectedColorBrighter
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7262
    self processSelectedColorsWith:[:clr | clr lightened]
1446
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7263
!
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
makeSelectedColorDarker
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7266
    self processSelectedColorsWith:[:clr | clr darkened]
1446
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7267
!
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7268
1884
2c4d13ecd7ed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1883
diff changeset
  7269
makeSelectedColorGray
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7270
    self processSelectedColorsWith:[:clr | Color brightness:(clr brightness)]
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7271
!
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7272
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7273
makeSelectedColorShifted
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7274
    "shift the selected color (in the colormap)
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7275
     using the hls/rgb shifting slider dialog"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7276
     
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7277
    |cMap colors cmapOffset|
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7278
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7279
    cMap := self image colorMap.
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7280
    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7281
    "/ 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
  7282
    cmapOffset := self hasTransparentColorInColorList ifTrue:[1] ifFalse:[0].
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7283
    colors := self selectedColors value collect:[:idx | cMap at:idx-cmapOffset].
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7284
    self changeHLSOfColors:colors.
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7285
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  7286
    "Modified: / 05-09-2017 / 09:03:47 / cg"
1884
2c4d13ecd7ed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1883
diff changeset
  7287
!
2c4d13ecd7ed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1883
diff changeset
  7288
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7289
makeSlightlyBrighter
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7290
    self updateImageAfterDoing:#makeSlightlyBrighter.
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7291
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7292
    "Created: / 24-11-2010 / 11:06:11 / cg"
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7293
    "Modified: / 31-08-2017 / 12:16:01 / cg"
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7294
!
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7295
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7296
makeSlightlyDarker
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7297
    self updateImageAfterDoing:#makeSlightlyDarker.
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7298
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7299
    "Created: / 24-11-2010 / 11:06:23 / cg"
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7300
    "Modified: / 31-08-2017 / 12:15:55 / cg"
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7301
!
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7302
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7303
menu_clearColormapEntry0AndMaskedPixels
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7304
    "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
  7305
     0 and then clear all masked pixels (to pixelValue 0)"
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7306
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7307
    imageEditView makeUndo.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7308
    self withExecuteCursorDo:[
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7309
        self nonUndoableClearColormapEntry0AndMaskedPixels
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7310
    ]
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7311
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7312
    "Modified: / 31-08-2017 / 14:31:21 / cg"
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7313
!
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
menu_clearMaskedPixels
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7316
    "clear all masked pixels (to pixelValue 0)"
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7317
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7318
    imageEditView makeUndo.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7319
    self withExecuteCursorDo:[
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7320
        self nonUndoableClearMaskedPixels
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7321
    ]
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7322
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7323
    "Modified: / 31-08-2017 / 14:23:20 / cg"
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7324
!
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7325
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7326
menu_compressColorMap
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7327
    "calculates a new color map for the image, using only used colors"
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7328
2893
feb4eeba44ad changed:
Stefan Vogel <sv@exept.de>
parents: 2884
diff changeset
  7329
    |depth oldImage usedColors colorMap| 
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7330
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7331
    oldImage := self image.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7332
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7333
    oldImage photometric ~~ #palette ifTrue:[
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7334
        self information:'Compress colorMap: Only palette images have colormaps.'.
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7335
        ^ self
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7336
    ].
2893
feb4eeba44ad changed:
Stefan Vogel <sv@exept.de>
parents: 2884
diff changeset
  7337
    depth := oldImage depth.
3103
690eff6e417e class: ImageEditor
Stefan Vogel <sv@exept.de>
parents: 3100
diff changeset
  7338
    colorMap := oldImage colorMap asArray.
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7339
    usedColors := oldImage realUsedColors.
2893
feb4eeba44ad changed:
Stefan Vogel <sv@exept.de>
parents: 2884
diff changeset
  7340
    usedColors size == colorMap size ifTrue:[
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7341
        self information:'Compress colorMap: Colormap already compressed - no compression.'.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7342
        ^ self
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7343
    ].
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7344
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7345
    imageEditView makeUndo.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7346
    self withExecuteCursorDo:[
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7347
        self nonUndoableCompressColorMap
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7348
    ]
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7349
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7350
    "Modified: / 31-08-2017 / 14:22:19 / cg"
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7351
!
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7352
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7353
menu_copyMask
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7354
    |mask|
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
    mask := self image mask.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7357
    MaskClipboard := mask subImageIn: (0@0 extent:mask extent).
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7358
!
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7359
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7360
menu_pasteMask
1480
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7361
    |img mask|
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7362
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7363
    imageEditView makeUndo.
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
    img := self image.
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7366
    mask := img mask.
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7367
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7368
    mask 
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7369
         copyFrom:MaskClipboard
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7370
         x:0 y:0
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7371
         toX:0 y:0 
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7372
         width:(mask width min:MaskClipboard width)
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7373
         height:(mask height min:MaskClipboard height).
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7374
    img mask:mask.
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7375
    (imageEditView image:img copy) notNil ifTrue:[
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7376
        self fetchImageData.
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7377
    ]
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7378
!
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7379
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7380
menu_sortColorMap
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7381
    "calculates a new color map for the image, sorting colors"
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
    self menu_sortColorMapWith:self sortBlockForColors
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7384
!
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
menu_sortColorMapWith:sortBlock
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7387
    "calculates a new color map for the image, sorting colors"
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7388
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7389
    self image photometric ~~ #palette ifTrue:[
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7390
        self information:'Compress colorMap: Only palette images have colormaps.'.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7391
        ^ self
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7392
    ].
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7393
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7394
    imageEditView makeUndo.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7395
    self withExecuteCursorDo:[
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7396
        self nonUndoableSortColorMapWith:sortBlock
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7397
    ]
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7398
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7399
    "Created: / 30-09-1998 / 23:51:23 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7400
    "Modified: / 31-08-2017 / 14:20:14 / cg"
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7401
!
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7402
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7403
pasteColorIntoColormap
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7404
    |clipBoardColor cmap|
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7405
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7406
    (clipBoardColor := self clipBoardColor) isNil ifTrue:[                
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7407
        ^ self
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7408
    ].
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7409
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7410
    cmap := self image colorMap.
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7411
    (cmap isNil or:[cmap isMappedPalette or:[cmap isFixedPalette]]) ifTrue:[
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7412
        drawingColormap isNil ifTrue:[
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7413
            drawingColormap := #()
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7414
        ].
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7415
        drawingColormap := drawingColormap copyWith:clipBoardColor.
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7416
        self selectedColors value:drawingColormap size.
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7417
        ^ self.
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7418
    ].
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7419
    
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7420
    self processSelectedColorWith:[:clr | clipBoardColor]
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7421
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7422
    "Modified (format): / 08-10-2017 / 09:03:59 / cg"
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7423
!
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7424
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7425
pickAndAddColorToColormap
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7426
    self addColorToColormap:(Color fromUser) undoable:true
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7427
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7428
    "Modified: / 31-08-2017 / 14:30:22 / cg"
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7429
!
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7430
1933
2fe701f721ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1931
diff changeset
  7431
pickAndPasteColor
2fe701f721ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1931
diff changeset
  7432
    self pickColor.
2fe701f721ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1931
diff changeset
  7433
    self pasteColorIntoColormap.
2fe701f721ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1931
diff changeset
  7434
!
2fe701f721ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1931
diff changeset
  7435
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7436
pickColor
1871
42729969c032 set selection interface changed
ca
parents: 1859
diff changeset
  7437
    imageEditView setClipboardObject:(Color fromUser)
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7438
!
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7439
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7440
processSelectedColorWith:aBlock
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7441
    "undoable color processing: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7442
     the selected color will be replaced by the value of aBlock"
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
    self processSelectedColorsWith:aBlock.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7445
!
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7446
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7447
processSelectedColorsWith:aBlock
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7448
    "undoable color processing: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7449
     the selected colors will be replaced by the value of aBlock 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7450
     (which gets a color vector and must return a color vector)"
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7451
3281
15b8e734190a #OTHER by stefan
Stefan Vogel <sv@exept.de>
parents: 3253
diff changeset
  7452
    |img cMap modifiedColormap oldColors newImage selectedColorIndices newColors maskOffset|
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7453
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7454
    selectedColorIndices := self selectedColors value.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7455
    selectedColorIndices isEmptyOrNil ifTrue:[^ self].
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7456
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7457
    img := self image.
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  7458
    self hasTransparentColorInColorList ifTrue:[
3281
15b8e734190a #OTHER by stefan
Stefan Vogel <sv@exept.de>
parents: 3253
diff changeset
  7459
        maskOffset := 1.
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7460
    ] ifFalse:[
3281
15b8e734190a #OTHER by stefan
Stefan Vogel <sv@exept.de>
parents: 3253
diff changeset
  7461
        maskOffset := 0.
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7462
    ].
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7463
    cMap := img colorMap.
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  7464
    (cMap isNil) ifTrue:[
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7465
        oldColors := drawingColormap
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7466
    ] ifFalse:[    
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  7467
        (cMap isMappedPalette or:[cMap isFixedPalette]) ifTrue:[
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  7468
            oldColors := cMap asArray
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  7469
        ] ifFalse:[    
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  7470
            oldColors := selectedColorIndices collect:[:idx | cMap at:idx-maskOffset].
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  7471
        ].
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7472
    ].
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7473
    imageEditView makeUndo.
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7474
2992
a970017936e7 Refactor:
Stefan Vogel <sv@exept.de>
parents: 2945
diff changeset
  7475
    modifiedColormap := cMap asNewArray.
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7476
    selectedColorIndices max > modifiedColormap size ifTrue:[
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7477
        |t|
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7478
        t := Array new:selectedColorIndices max.
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7479
        t replaceFrom:1 with:modifiedColormap.
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7480
        modifiedColormap := t.
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7481
    ].
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7482
    
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7483
    newColors := oldColors collect:aBlock.
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  7484
    selectedColorIndices do:[:idx |
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7485
        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
  7486
    ].
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7487
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7488
    newImage := img species new
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7489
                    width:img width
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7490
                    height:img height
1843
771731481a20 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1842
diff changeset
  7491
                    depth:img depth
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7492
                    fromArray:img bits.
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7493
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  7494
    (cMap isNil) ifTrue:[
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7495
        "/ only a dummy...
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7496
    ] ifFalse:[    
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7497
        newImage colorMap:modifiedColormap.  
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  7498
        newImage photometric:#palette.  
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7499
    ].
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7500
    newImage fileName:img fileName.
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7501
    newImage mask:(img mask copy).
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7502
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7503
    (imageEditView image:newImage) notNil ifTrue:[
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7504
        self fetchImageData.
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7505
    ].
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7506
    self selectedColors value:selectedColorIndices.
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7507
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7508
    "Modified: / 08-10-2017 / 09:20:13 / cg"
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7509
!
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7510
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7511
reduceNumberOfColors
3464
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  7512
    "reduce by masking off r/g/b bits"
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  7513
1727
8c626d784494 color reduction algorithm fixed
Claus Gittinger <cg@exept.de>
parents: 1716
diff changeset
  7514
    |s n anyChange img usedColors|
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7515
2817
Claus Gittinger <cg@exept.de>
parents: 2814
diff changeset
  7516
    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
  7517
    s size == 0 ifTrue:[^ self].
1934
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7518
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7519
    n := Integer readFrom:s onError:0.
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7520
    (n between:1 and:7) ifFalse:[
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7521
        Dialog warn:'Image unchanged'.
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7522
        ^ self
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7523
    ].
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7524
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7525
    self withExecuteCursorDo:[
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7526
        anyChange := imageEditView reduceColorResolutionBy:n.
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7527
        anyChange ifFalse:[
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7528
            Dialog warn:'Image unchanged'.
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7529
        ] ifTrue:[
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7530
            img := imageEditView image.
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7531
            imageEditView image:img.
1446
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7532
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7533
            self fetchImageData.
1727
8c626d784494 color reduction algorithm fixed
Claus Gittinger <cg@exept.de>
parents: 1716
diff changeset
  7534
            usedColors := img usedColorsMax:10000.
8c626d784494 color reduction algorithm fixed
Claus Gittinger <cg@exept.de>
parents: 1716
diff changeset
  7535
            usedColors size == 10000 ifTrue:[
8c626d784494 color reduction algorithm fixed
Claus Gittinger <cg@exept.de>
parents: 1716
diff changeset
  7536
                Dialog information:('>= ' , usedColors size printString , ' colors used.')
8c626d784494 color reduction algorithm fixed
Claus Gittinger <cg@exept.de>
parents: 1716
diff changeset
  7537
            ] ifFalse:[
8c626d784494 color reduction algorithm fixed
Claus Gittinger <cg@exept.de>
parents: 1716
diff changeset
  7538
                Dialog information:(usedColors size printString , ' colors used.')
8c626d784494 color reduction algorithm fixed
Claus Gittinger <cg@exept.de>
parents: 1716
diff changeset
  7539
            ]
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7540
        ]
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7541
    ].
2817
Claus Gittinger <cg@exept.de>
parents: 2814
diff changeset
  7542
Claus Gittinger <cg@exept.de>
parents: 2814
diff changeset
  7543
    "Modified: / 29-10-2010 / 18:08:01 / cg"
3464
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  7544
    "Modified (comment): / 24-08-2017 / 20:50:28 / cg"
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7545
!
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7546
1930
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  7547
reduceNumberOfColors2
3464
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  7548
    "reduce by rounding r/g/b channel values"
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  7549
    
1938
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7550
    |s rndR rndG rndB usedColors image newImage|
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7551
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7552
    s := Dialog request:'Rounding Interval red (2..) ?' initialAnswer:4.
1934
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7553
    s size == 0 ifTrue:[^ self].
1938
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7554
    rndR := Integer readFrom:s onError:0.
1939
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  7555
1938
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7556
    s := Dialog request:'Rounding Interval green (2..) ?' initialAnswer:2.
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7557
    s size == 0 ifTrue:[^ self].
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7558
    rndG := Integer readFrom:s onError:0.
1939
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  7559
1938
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7560
    s := Dialog request:'Rounding Interval blue (2..) ?' initialAnswer:10.
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7561
    s size == 0 ifTrue:[^ self].
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7562
    rndB := Integer readFrom:s onError:0.
1939
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  7563
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  7564
    ((rndR > 1) or:[(rndG > 1) or:[(rndB > 1)]]) ifFalse:[
1930
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  7565
        Dialog warn:'Image unchanged'.
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  7566
        ^ self
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  7567
    ].
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  7568
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  7569
    self withExecuteCursorDo:[
3463
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7570
        |reduceColor nUsed|
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7571
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7572
        reduceColor :=
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7573
            [:clr |
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7574
                |r g b nr ng nb|
1934
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7575
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7576
                r := clr redByte.
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7577
                g := clr greenByte.
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7578
                b := clr blueByte. 
1938
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7579
                nr := (r roundTo:rndR) min:255.
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7580
                ng := (g roundTo:rndG) min:255.
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7581
                nb := (b roundTo:rndB) min:255. 
1934
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7582
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7583
                Color redByte:nr greenByte:ng blueByte:nb.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7584
            ].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7585
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7586
        image := self image.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7587
        "/ usedColors := image usedColorsMax:4096.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7588
        imageEditView makeUndo.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7589
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7590
        newImage := image copy.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7591
        newImage photometric == #palette ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7592
            newImage colorMap:(image colorMap collect:reduceColor).
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7593
        ] ifFalse:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7594
            image
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7595
                colorsFromX:0 y:0 toX:(image width-1) y:(image height-1) 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7596
                do:[:x :y :clr |
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7597
                    newImage colorAtX:x y:y put:(reduceColor value:clr)
2260
9a6345ae1c56 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2249
diff changeset
  7598
                ].
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7599
        ].
1934
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7600
        imageEditView image:newImage.
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7601
        imageEditView setModified.
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7602
        self updateImage.
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7603
        self updateImagePreView.
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7604
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7605
        self fetchImageData.
3463
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7606
        
1934
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7607
        usedColors := newImage usedColorsMax:10000.
3463
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7608
        nUsed := usedColors size.
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7609
        nUsed == 10000 ifTrue:[
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7610
            Dialog information:('>= ' , nUsed printString , ' colors used.')
1934
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7611
        ] ifFalse:[
3463
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7612
            Dialog information:(nUsed printString , ' colors used.')
1934
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7613
        ]
1930
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  7614
    ].
2054
56352366d94a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2044
diff changeset
  7615
3463
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7616
    "Modified: / 24-08-2017 / 18:25:04 / cg"
3464
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  7617
    "Modified (comment): / 24-08-2017 / 20:50:14 / cg"
1930
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  7618
!
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  7619
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7620
selectColor:aColor
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7621
    |idx img cMap|
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7622
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7623
    aColor isNil ifTrue:[
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7624
        idx := nil.
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7625
    ] ifFalse:[
2791
7d01ac3a20e7 changed: #selectColor:
Claus Gittinger <cg@exept.de>
parents: 2790
diff changeset
  7626
        img := self image.
7d01ac3a20e7 changed: #selectColor:
Claus Gittinger <cg@exept.de>
parents: 2790
diff changeset
  7627
        img notNil ifTrue: [
7d01ac3a20e7 changed: #selectColor:
Claus Gittinger <cg@exept.de>
parents: 2790
diff changeset
  7628
            aColor == Color noColor ifTrue:[
7d01ac3a20e7 changed: #selectColor:
Claus Gittinger <cg@exept.de>
parents: 2790
diff changeset
  7629
                (img mask notNil) ifTrue:[
7d01ac3a20e7 changed: #selectColor:
Claus Gittinger <cg@exept.de>
parents: 2790
diff changeset
  7630
                    idx := 1.
7d01ac3a20e7 changed: #selectColor:
Claus Gittinger <cg@exept.de>
parents: 2790
diff changeset
  7631
                ]
7d01ac3a20e7 changed: #selectColor:
Claus Gittinger <cg@exept.de>
parents: 2790
diff changeset
  7632
            ] ifFalse:[
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7633
                (cMap := self listOfColors) notNil ifTrue:[
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7634
                    idx := cMap indexOf:aColor ifAbsent:nil.
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7635
                ].
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7636
                idx isNil ifTrue:[
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7637
                    "/ should not happen...
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7638
                    (cMap := img colorMap) notNil ifTrue:[
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7639
                        idx := cMap indexOf:aColor ifAbsent:nil.
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7640
                        idx notNil ifTrue:[
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7641
                            img mask notNil ifTrue:[
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7642
                                idx := idx + 1.
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7643
                            ].
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7644
                        ]
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7645
                    ].
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7646
                ].
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7647
            ].
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7648
        ].
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7649
    ].
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7650
    self selectedColors value:{idx}.
2790
2c90a15a0011 changed: #selectColor:
Claus Gittinger <cg@exept.de>
parents: 2771
diff changeset
  7651
2791
7d01ac3a20e7 changed: #selectColor:
Claus Gittinger <cg@exept.de>
parents: 2790
diff changeset
  7652
    "Modified: / 02-07-2010 / 12:06:07 / cg"
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7653
!
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7654
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7655
selectedColorIndexOrNil
2651
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  7656
    |img clrIndex|
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7657
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7658
    img := self image.
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7659
    img isNil ifTrue:[
2764
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
  7660
        "/ self warn:'No Image.'.
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7661
        ^ nil
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7662
    ].
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7663
    clrIndex := self selectionOfColor value.
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  7664
    self hasTransparentColorInColorList ifTrue: [ 
2449
5ef668d71314 changed #selectedColorIndexOrNil
Claus Gittinger <cg@exept.de>
parents: 2447
diff changeset
  7665
        (clrIndex isInteger and:[clrIndex > 1]) ifTrue:[
5ef668d71314 changed #selectedColorIndexOrNil
Claus Gittinger <cg@exept.de>
parents: 2447
diff changeset
  7666
            ^ clrIndex - 1 
5ef668d71314 changed #selectedColorIndexOrNil
Claus Gittinger <cg@exept.de>
parents: 2447
diff changeset
  7667
        ].
5ef668d71314 changed #selectedColorIndexOrNil
Claus Gittinger <cg@exept.de>
parents: 2447
diff changeset
  7668
        ^ nil
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7669
    ].
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7670
    ^ clrIndex
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  7671
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  7672
    "Modified: / 05-09-2017 / 09:04:05 / cg"
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7673
!
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7674
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7675
selectedColorOrNil
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7676
    |cmapIndex img cMap colorList|
1896
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  7677
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  7678
    cmapIndex := self selectedColorIndexOrNil.
1900
41ba86fb1087 cleanup
Claus Gittinger <cg@exept.de>
parents: 1899
diff changeset
  7679
    cmapIndex isNil ifTrue:[^ nil].
2556
736533777318 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2546
diff changeset
  7680
    cmapIndex == 0 ifTrue:[^ nil].
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7681
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7682
    img := self image.
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7683
    cMap := img colorMap.
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7684
    cMap isNil ifTrue:[
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7685
        "/ 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
  7686
        colorList := self listOfColors.
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7687
        colorList notNil ifTrue:[
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7688
            ^ colorList at:cmapIndex ifAbsent:nil
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7689
        ].
1900
41ba86fb1087 cleanup
Claus Gittinger <cg@exept.de>
parents: 1899
diff changeset
  7690
        ^ nil
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7691
    ].
1896
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  7692
    ^ cMap at:cmapIndex.
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7693
!
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7694
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7695
sortColorMap
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7696
    "calculates a new color map for the image, sorting colors"
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7697
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7698
    self nonUndoableSortColorMapWith:self sortBlockForColorsByRGB
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7699
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7700
    "Modified: / 31-08-2017 / 14:20:07 / cg"
1939
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  7701
!
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  7702
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  7703
sortColorMapWith:sortBlock
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7704
    "warning: not undoable
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7705
     calculates a new color map for the image, sorting colors"
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
    |depth newColorMap newImage oldImage usedColors oldToNew oldBits newBits tmpBits
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7708
     expectedSize w h| 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7709
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7710
    oldImage := self image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7711
    depth := oldImage depth.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7712
    w := oldImage width.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7713
    h := oldImage height.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7714
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7715
    usedColors := oldImage realColorMap.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7716
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7717
    "/ translation table
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7718
    oldToNew := ByteArray new:(1 bitShift:depth).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7719
    newColorMap := usedColors asArray.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7720
    newColorMap sort:sortBlock.
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
    oldImage colorMap asArray keysAndValuesDo:[:oldIdx :clr |
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7723
        |newPixel|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7724
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7725
        (usedColors includes:clr) ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7726
            newPixel := newColorMap indexOf:clr.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7727
            oldToNew at:oldIdx put:newPixel-1.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7728
        ]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7729
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7730
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7731
    oldBits := oldImage bits.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7732
    "/ sanity check...
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7733
    expectedSize := ((w * h * depth + 7) // 8).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7734
    (oldBits size < expectedSize) ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7735
        self halt:'incorrect pixeldata size'.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7736
        oldBits := (ByteArray new:expectedSize) replaceFrom:1 with:oldBits; yourself.
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
    newBits := ByteArray new:(oldBits size).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7739
    depth ~~ 8 ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7740
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7741
        "/ expand/compress can only handle 8bits
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7742
        tmpBits := ByteArray uninitializedNew:(w*h).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7743
        oldBits
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7744
            expandPixels:depth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7745
            width:w height:h 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7746
            into:tmpBits
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7747
            mapping:oldToNew.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7748
        tmpBits
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7749
            compressPixels:depth 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7750
            width:w height:h 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7751
            into:newBits 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7752
            mapping:nil
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7753
    ] ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7754
        oldBits
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7755
            expandPixels:depth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7756
            width:w height:h 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7757
            into:newBits
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7758
            mapping:oldToNew.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7759
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7760
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7761
    newImage := oldImage species new
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7762
                    width:w height:h depth:depth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7763
                    fromArray:newBits.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7764
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7765
    newImage colorMap:newColorMap.  
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7766
    newImage fileName:oldImage fileName.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7767
    newImage mask:(oldImage mask copy).
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
    (imageEditView image:newImage) notNil ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7770
        self fetchImageData.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7771
    ]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7772
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7773
    "Modified: / 15-09-1998 / 17:53:32 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7774
    "Created: / 30-09-1998 / 23:51:23 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7775
    "Modified (comment): / 31-08-2017 / 14:19:21 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7776
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7777
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7778
updateImageAfterDoing:aBlockOrSelector
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7779
    self withExecuteCursorDo:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7780
        aBlockOrSelector value:imageEditView.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7781
        self updateImage.
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
    "Created: / 31-08-2017 / 12:14:39 / cg"
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7787
!ImageEditor methodsFor:'user actions-colormap-basic'!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7788
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7789
nonUndoableClearColormapEntry0AndMaskedPixels
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7790
    "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
  7791
     0 and then clear all masked pixels (to pixelValue 0).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7792
     This is required for windows icons to be really transparent"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7793
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7794
    |index colorMap| 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7795
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7796
    self nonUndoableCompressColorMap.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7797
    
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
    (colorMap includes:(Color black)) ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7800
        self addColorToColormap:(Color black) undoable:false.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7801
        colorMap := self image colorMap.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7802
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7803
    index := colorMap indexOf:(Color black).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7804
    index == 1 ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7805
        self nonUndoableSortColorMapWith:self sortBlockForColorsByRGB.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7806
        colorMap := self image colorMap.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7807
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7808
    self nonUndoableClearMaskedPixels
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
    "Created: / 31-08-2017 / 14:31:09 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7811
!
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
nonUndoableClearMaskedPixels
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7814
    "clear all masked pixels (to pixelValue 0)"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7815
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7816
    |newImage| 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7817
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7818
    newImage := self image clearMaskedPixels.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7819
    0 to:newImage height - 1 do:[:y |
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7820
        0 to:newImage width - 1 do:[:x |
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7821
            (newImage maskAtX:x y:y) == 0 ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7822
                newImage pixelAtX:x y:y put:0
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
        ]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7825
    ].
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
    (imageEditView image:newImage) notNil ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7828
        self fetchImageData.
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
    "Created: / 31-08-2017 / 14:22:58 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7832
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7833
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7834
nonUndoableCompressColorMap
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7835
    "not undoable
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7836
     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
  7837
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7838
    |newImage| 
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
    newImage := self image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7841
    newImage compressColorMap.
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
    (imageEditView image:newImage) notNil ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7844
        self fetchImageData.
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
    "Created: / 31-08-2017 / 14:21:51 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7848
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7849
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7850
nonUndoableSortColorMapWith:sortBlock
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7851
    "not undoable
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7852
     calculates a new color map for the image, sorting colors"
1939
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  7853
3224
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7854
    |depth newColorMap newImage oldImage usedColors oldToNew oldBits newBits tmpBits
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7855
     expectedSize w h| 
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7856
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7857
    oldImage := self image.
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7858
    depth := oldImage depth.
3224
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7859
    w := oldImage width.
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7860
    h := oldImage height.
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7861
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7862
    usedColors := oldImage realColorMap.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7863
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7864
    "/ translation table
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7865
    oldToNew := ByteArray new:(1 bitShift:depth).
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7866
    newColorMap := usedColors asArray.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7867
    newColorMap sort:sortBlock.
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
    oldImage colorMap asArray keysAndValuesDo:[:oldIdx :clr |
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7870
        |newPixel|
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7871
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7872
        (usedColors includes:clr) ifTrue:[
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7873
            newPixel := newColorMap indexOf:clr.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7874
            oldToNew at:oldIdx put:newPixel-1.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7875
        ]
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7876
    ].
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7877
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7878
    oldBits := oldImage bits.
3224
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7879
    "/ sanity check...
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7880
    expectedSize := ((w * h * depth + 7) // 8).
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7881
    (oldBits size < expectedSize) ifTrue:[
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7882
        self halt:'incorrect pixeldata size'.
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7883
        oldBits := (ByteArray new:expectedSize) replaceFrom:1 with:oldBits; yourself.
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
    newBits := ByteArray new:(oldBits size).
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7886
    depth ~~ 8 ifTrue:[
3224
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7887
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7888
        "/ expand/compress can only handle 8bits
3224
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7889
        tmpBits := ByteArray uninitializedNew:(w*h).
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7890
        oldBits
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7891
            expandPixels:depth
3224
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7892
            width:w height:h 
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7893
            into:tmpBits
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7894
            mapping:oldToNew.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7895
        tmpBits
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7896
            compressPixels:depth 
3224
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7897
            width:w height:h 
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7898
            into:newBits 
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7899
            mapping:nil
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7900
    ] ifFalse:[
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7901
        oldBits
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7902
            expandPixels:depth
3224
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7903
            width:w height:h 
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7904
            into:newBits
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7905
            mapping:oldToNew.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7906
    ].
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7907
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7908
    newImage := oldImage species new
3224
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  7909
                    width:w height:h depth:depth
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7910
                    fromArray:newBits.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7911
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7912
    newImage colorMap:newColorMap.  
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7913
    newImage fileName:oldImage fileName.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7914
    newImage mask:(oldImage mask copy).
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7915
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7916
    (imageEditView image:newImage) notNil ifTrue:[
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7917
        self fetchImageData.
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7918
    ]
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7919
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7920
    "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
  7921
! !
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7922
1715
9eebdb3802aa method category rename
Claus Gittinger <cg@exept.de>
parents: 1713
diff changeset
  7923
!ImageEditor methodsFor:'user actions-editing'!
400
228524287573 intitial checkin
tz
parents:
diff changeset
  7924
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7925
autoCropAll
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7926
    "find all borders and cut them off"
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
    imageEditView autoCropLeft:true right:true top:true bottom:true.   
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7929
    self updateInfoLabel
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
    "Created: / 20-02-2017 / 18:05:38 / cg"
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7932
!
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
autoCropBottom
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7935
    "find a bottom border and cut it off"
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
    imageEditView autoCropLeft:false right:false top:false bottom:true.   
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7938
    self updateInfoLabel
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
    "Created: / 20-02-2017 / 18:05:45 / cg"
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7941
!
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
autoCropLeft
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7944
    "find a left border and cut it off"
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
    imageEditView autoCropLeft:true right:false top:false bottom:false.   
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7947
    self updateInfoLabel
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
    "Created: / 20-02-2017 / 18:05:52 / cg"
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7950
!
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
autoCropRight
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7953
    "find a right border and cut it off"
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
    imageEditView autoCropLeft:false right:true top:false bottom:false.   
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7956
    self updateInfoLabel
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
    "Created: / 20-02-2017 / 18:04:20 / cg"
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7959
!
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
autoCropTop
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7962
    "find a top border and cut it off"
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
    imageEditView autoCropLeft:false right:false top:true bottom:false.   
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7965
    self updateInfoLabel
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7966
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7967
    "Created: / 20-02-2017 / 18:06:03 / cg"
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7968
!
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  7969
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7970
ditherGrayToDepth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7971
    self askForDepthThenDo:[:depth |
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7972
        self ditherGrayToDepth:depth
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
    "Created: / 24-08-2017 / 17:49:42 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7976
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7977
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7978
ditherGrayToDepth:depth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7979
    self withExecuteCursorDo:[
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  7980
        |image newImage|
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  7981
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  7982
        image := self image.
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7983
        depth == 1 ifTrue:[
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  7984
            newImage := image asErrorDitheredMonochromeImage
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7985
        ] ifFalse:[
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  7986
            newImage := image asGrayImageDepth:depth dither:#floydSteinberg.
3476
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
        imageEditView newImageWithUndo:newImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7989
    ].
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
    "Created: / 24-08-2017 / 17:51:07 / cg"
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  7992
    "Modified: / 23-10-2017 / 10:58:18 / cg"
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7993
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7994
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7995
ditherToDepth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7996
    self askForDepthThenDo:[:depth |
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7997
        self convertToDepth:depth dither:true
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7998
    ].
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
    "Created: / 07-07-2006 / 13:22:10 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8001
    "Modified: / 30-08-2017 / 00:34:42 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8002
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8003
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8004
ditherToNumberOfGrayColors
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8005
    |oldDepth numGrayColors suggestion grayImage userInput grayColors|
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
    oldDepth := self image depth.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8008
    grayImage := self image asGrayImageDepth:8.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8009
    
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8010
    suggestion := LastNumThresholdGrayColors notNil ifTrue:[
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8011
                    LastNumThresholdGrayColors
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8012
                  ] ifFalse:[
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8013
                    oldDepth > 8 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8014
                        ifTrue:[256] 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8015
                        ifFalse:[2 raisedTo:((oldDepth // 2 - 1) nextPowerOf2)]
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8016
                  ].
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
    Dialog modifyingBoxWith:[:box |
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8019
        |preview slider update thresholdValue|
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8020
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8021
        thresholdValue := suggestion asValue.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8022
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8023
        box enterField 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8024
            converter:(PrintConverter new initForNumber);
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8025
            model:thresholdValue.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8026
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8027
        box verticalPanel extent:1.0 @ 300.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8028
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8029
        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
  8030
        slider model:thresholdValue.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8031
        slider width:1.0; leftInset:4; rightInset:4.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8032
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8033
        box verticalPanel add:(preview := ImageView new).
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8034
        preview extent:300 @300.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8035
        preview level:-1.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8036
        box verticalPanel horizontalLayout:#fitSpace.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8037
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8038
        update := 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8039
            [
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8040
                |numGrayColors depth s t tImage|
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8041
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8042
                numGrayColors := thresholdValue value clampBetween:2 and:256.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8043
                grayColors := Color grayColorVector:numGrayColors.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8044
                tImage := grayImage asDitheredImageUsing:grayColors depth:(grayImage depth).
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8045
                
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8046
                preview image:(tImage magnifiedPreservingRatioTo:preview extent).
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8047
            ].
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8048
        update value.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8049
        box enterField acceptOnLostFocus:true.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8050
        box enterField acceptOnLeave:true.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8051
        thresholdValue onChangeEvaluate:update.
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
    ] do:[
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8054
        userInput := Dialog request:'Number of Gray Colors ?' initialAnswer:suggestion asString.
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
    userInput isEmptyOrNil ifTrue:[^ self].
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8057
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
    numGrayColors := Number readFrom:userInput onError:nil.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8060
    numGrayColors isNil ifTrue:[^ self].
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
    grayColors := Color grayColorVector:numGrayColors.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8063
    imageEditView newImageWithUndo:(grayImage asDitheredImageUsing:grayColors depth:(grayImage depth)).
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8064
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8065
    "Created: / 23-10-2017 / 11:17:44 / cg"
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8066
!
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8067
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8068
do3DProjection
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8069
    "make a naive 3D projection;
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8070
     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
  8071
     
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8072
    |box dx1 dx2 image|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8073
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8074
    image := imageEditView image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8075
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8076
    box := EnterBox new.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8077
    box title:(resources string:'dX1 (0 < dx < 0.5):').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8078
    box okText:(resources string:'OK').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8079
    box abortText:(resources string:'Cancel').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8080
    box initialText:'0.1'.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8081
    box showAtPointer.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8082
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8083
    (box accepted 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8084
    and: [(dx1 := Number readFrom:(box contents) onError:nil) notNil])
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8085
    ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8086
        box title:(resources string:'dX2 (0 < dx < 0.5):').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8087
        box initialText:(dx1 printString).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8088
        box showAtPointer.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8089
        (box accepted 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8090
        and: [(dx2 := Number readFrom:(box contents) onError:nil) notNil])
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8091
        ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8092
            imageEditView threeDProjection:dx1 and:dx2.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8093
        ]
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8096
    self updateInfoLabel
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
    "Modified (comment): / 31-08-2017 / 13:58:03 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8099
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8100
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8101
doBrightenImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8102
    imageEditView brightenImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8103
    self listOfColors removeAll.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8104
    self findColorMapMode.     
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8105
    "/ imageEditView removelastUndo
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8106
!
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
doBrowseClass
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8109
    "opens a System Browser on the resourceClass and the resourceSelector"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8110
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8111
    |cls|
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 := imageEditView resourceClass.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8114
    cls isNil ifTrue:[^ self warn:'No Class specified'].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8115
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8116
    cls browserClass
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8117
        openInClass:cls class 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8118
        selector:(imageEditView resourceSelector)
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
    "Modified: / 31.7.1998 / 02:01:15 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8121
!
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
doCopyImageToClipboard
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8124
    imageEditView copyImageToClipboard.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8125
!
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
doCropManual
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8128
    "let user specify borders and cut them off"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8129
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8130
    |bindings left top right bottom img firstChange cropAction acceptChannel|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8131
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8132
    acceptChannel := TriggerValue new.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8133
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8134
    firstChange := true.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8135
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8136
    cropAction := 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8137
        [:lV :rV :tV :bV | |l r t b|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8138
            acceptChannel value:true.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8139
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8140
            l := lV value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8141
            r := rV value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8142
            t := tV value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8143
            b := bV value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8144
            (l + r + t + b) == 0 ifTrue:[
3526
d27e02006468 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3513
diff changeset
  8145
                self window beepInEditor
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8146
            ] ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8147
                img := imageEditView image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8148
                firstChange ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8149
                    imageEditView makeUndo.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8150
                    firstChange := false.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8151
                ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8152
                imageEditView
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8153
                    makeSubImageX:l y:t 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8154
                    width:(img width - l - r)
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8155
                    height:(img height - t - b).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8156
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8157
                self updateImagePreView.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8158
                self updateInfoLabel
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8162
    bindings := IdentityDictionary new.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8163
    bindings at:#cropLeftAmount put:(left := 1 asValue).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8164
    bindings at:#cropRightAmount put:(right := 1 asValue).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8165
    bindings at:#cropTopAmount put:(top := 1 asValue).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8166
    bindings at:#cropBottomAmount put:(bottom := 1 asValue).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8167
    bindings at:#acceptChannel put:acceptChannel.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8168
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8169
    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
  8170
    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
  8171
    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
  8172
    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
  8173
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8174
    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
  8175
    bindings at:#cropBoxIsDialog   put:true.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8176
    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8177
    (self openDialogInterface:#cropSpec withBindings:bindings) 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8178
    ifFalse:[ 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8179
        firstChange ~~ true ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8180
            imageEditView undo.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8181
            self updateImagePreView.
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8185
    "Created: / 07-09-1998 / 18:16:07 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8186
    "Modified: / 19-02-2017 / 15:43:50 / cg"
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8189
doDarkenImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8190
    imageEditView darkenImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8191
    self listOfColors removeAll.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8192
    self findColorMapMode.     
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8193
    "/ imageEditView removelastUndo
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8196
doEditMask
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8197
    |mask|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8198
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8199
    (mask := self image mask) notNil ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8200
        mask edit
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8203
    "Modified: / 18-02-2017 / 00:38:51 / cg"
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8206
doFlipHorizontal
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8207
    "flips horizontally current image"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8208
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8209
    imageEditView flipHorizontal
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8212
doFlipVertical
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8213
    "flips vertically current image"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8214
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8215
    imageEditView flipVertical
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8218
doInsertTextFromUser
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8219
    |text tempForm tempImage maskImage font w h paintColor|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8220
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8221
    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
  8222
    text isEmptyOrNil ifTrue:[^ self ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8223
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8224
    font := Font family:'arial' size:20.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8225
    font := font onDevice:Screen current.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8226
    w := font widthOf:text.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8227
    h := font heightOf:text.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8228
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8229
    tempForm := Form extent:(w@h) depth:1 onDevice:(Screen current).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8230
    tempForm clear.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8231
    tempForm font:font.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8232
    tempForm paint:(Color colorId:1).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8233
    tempForm displayString:text at:(0@font ascent).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8234
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8235
    tempImage := tempForm asImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8236
    maskImage := tempForm asImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8237
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8238
    paintColor := imageEditView selectedColor.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8239
    paintColor  colorId == 0 ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8240
        paintColor := Color black
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8241
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8242
    tempImage   
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8243
        photometric:#palette;
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8244
        colorMap:(Array 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8245
                    with:Color white 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8246
                    with:paintColor);
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8247
        mask:maskImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8248
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8249
    ImageEditView copyImageToClipboard:tempImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8250
    self editMode value:#paste.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8251
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8252
    "Modified: / 11-11-2007 / 12:32:55 / cg"
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8255
doInspectImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8256
    "opens a System Browser on the resourceClass and the resourceSelector"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8257
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8258
    self image inspect
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8261
doInvertedBitsImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8262
    "inverts the pixels"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8263
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8264
    self withExecuteCursorDo:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8265
        imageEditView makeInvertedBits.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8266
        self updateImage.
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
"/
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8269
"/    imageEditView negativeImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8270
"/    self listOfColors removeAll.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8271
"/    self findColorMapMode.     
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8272
"/    "/ imageEditView removelastUndo
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8276
    "Created: / 31-08-2017 / 12:49:13 / cg"
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8279
doMagnifyDown
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8280
    "magnifies the current image one step down"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8281
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8282
    |magHolder mag|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8283
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8284
    magHolder := self magnificationHolder.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8285
    (mag := magHolder value) > 1 ifTrue: [
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8286
        magHolder value: mag - 1
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8289
    "Modified: / 26.7.1998 / 20:24:08 / cg"
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8292
doMagnifyImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8293
    "magnifies the current image to a new size"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8294
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8295
    |box newSize image antiAliased|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8296
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8297
    antiAliased := false asValue.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8298
    image := imageEditView image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8299
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8300
    box := EnterBox new.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8301
    box title:(resources string:'Images new size:').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8302
    box okText:(resources string:'OK').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8303
    box abortText:(resources string:'Cancel').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8304
    box initialText:image extent printString.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8305
    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
  8306
    box showAtPointer.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8307
    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8308
    (box accepted 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8309
    and: [(newSize := self pointFromString:(box contents)) notNil])
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8310
    ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8311
        newSize isPoint ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8312
            self warn:'Please enter the new size as ''x @ y''.'.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8313
            ^ self.    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8314
        ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8315
        antiAliased value ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8316
            ((newSize x < image width) or:[(newSize y < image height)]) ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8317
                imageEditView magnifySmoothingTo:newSize.    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8318
            ] ifFalse:[    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8319
                imageEditView magnifyAntiAliasedImageTo:newSize.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8320
            ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8321
        ] ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8322
            imageEditView magnifyImageTo:newSize.
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8326
    self updateInfoLabel
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8327
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8328
    "Modified: / 30-08-2017 / 15:46:02 / cg"
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8331
doMagnifyImageBy
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8332
    "magnifies the current image (by a scale)"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8333
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8334
    |oldSize newSize scaleString scale image antiAliased smoothing|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8335
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8336
    image := imageEditView image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8337
    oldSize := image extent.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8338
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8339
    antiAliased := false asValue.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8340
    smoothing := false asValue.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8341
    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8342
    Dialog modifyingBoxWith:[:box |
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8343
        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
  8344
        "/ box verticalPanel add:(CheckBox label:(resources string:'Smoothing') model:smoothing).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8345
    ] do:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8346
        scaleString := Dialog 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8347
                   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
  8348
                   initialAnswer:'1'
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8349
                   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
  8350
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8351
    scaleString isNil ifTrue:[^ self].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8352
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8353
    scale := Object readFromString:scaleString onError:nil.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8354
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8355
    scale notNil ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8356
        scale isNumber ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8357
            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
  8358
            ^ self.    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8359
        ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8360
        newSize := oldSize * scale.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8361
        antiAliased value ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8362
            scale < 1 ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8363
                imageEditView magnifySmoothingBy:scale.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8364
            ] ifFalse:[    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8365
                imageEditView magnifyAntiAliasedImageTo:newSize.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8366
            ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8367
        ] ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8368
            imageEditView magnifyImageTo:newSize.
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8372
    self updateInfoLabel
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8373
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8374
    "Modified: / 30-08-2017 / 15:34:56 / cg"
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8377
doMagnifyUp
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8378
    "magnifies the current image one step up"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8379
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8380
    |magHolder mag|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8381
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8382
    magHolder := self magnificationHolder.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8383
    (mag := magHolder value) < 63 ifTrue: [
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8384
        magHolder value: mag + 1
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8387
    "Modified: / 26.7.1998 / 20:23:52 / cg"
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8390
doResizeImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8391
    "resizes the current image"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8392
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8393
    |box newSize image|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8394
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8395
    image := imageEditView image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8396
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8397
    box := EnterBox new.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8398
    box title:(resources string:'Images new size:').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8399
    box okText:(resources string:'OK').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8400
    box abortText:(resources string:'Cancel').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8401
    box initialText:image extent printString.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8402
    box showAtPointer.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8403
    (box accepted 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8404
    and: [(newSize := self pointFromString:(box contents)) notNil])
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8405
    ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8406
        imageEditView resizeImageTo:newSize.
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8410
doRotateImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8411
    "rotates current image"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8412
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8413
    |rotationString box rotation|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8414
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8415
    rotationString := Dialog 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8416
                        request:(resources string:'Rotate by (degrees, clockwise):')
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8417
                        list:#( '-90' '90' '180' '45' '-45'  '135' '-135' ) 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8418
                        initialAnswer:90.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8419
    rotationString isEmptyOrNil ifTrue:[^ self].    "/ canceled
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8420
    rotation := Number readFrom:rotationString onError:[nil].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8421
    rotation isNil ifTrue:[^ self].   
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8422
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8423
"/    box := EnterBox new.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8424
"/    box title:(resources string:'Rotate by (degrees, clockwise):').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8425
"/    box okText:(resources string:'OK').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8426
"/    box abortText:(resources string:'Cancel').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8427
"/    box initialText: '0'.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8428
"/    box showAtPointer.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8429
"/    (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
  8430
"/    ifFalse:[ ^ self ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8431
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8432
    imageEditView rotateImageBy:rotation.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8433
    self updateInfoLabel.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8434
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8435
    "Modified: / 18-03-2012 / 14:41:14 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8436
    "Modified (comment): / 24-08-2017 / 15:02:57 / cg"
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8439
doShiftManual
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8440
    "let user specify amount and shift"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8441
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8442
    |bindings amount img firstChange shiftAction acceptChannel wrapHolder|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8443
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8444
    acceptChannel := TriggerValue new.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8445
    wrapHolder := (lastShiftUsedWrap ? true) asValue.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8446
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8447
    firstChange := true.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8448
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8449
    shiftAction := 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8450
        [:shiftH :shiftV | 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8451
            acceptChannel value:true.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8452
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8453
            img := imageEditView image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8454
            firstChange ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8455
                imageEditView makeUndo.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8456
                firstChange := false.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8457
            ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8458
            imageEditView shiftImageHorizontal:(shiftH value) vertical:(shiftV value) wrap:(wrapHolder value).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8459
            self updateInfoLabel
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8462
    bindings := IdentityDictionary new.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8463
    bindings at:#shiftAmount put:(amount := 1 asValue).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8464
    bindings at:#wrap put:wrapHolder.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8465
    bindings at:#acceptChannel put:acceptChannel.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8466
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8467
    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
  8468
    bindings at:#shiftRightNow  put:[ shiftAction value:amount value value:0 ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8469
    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
  8470
    bindings at:#shiftDownNow   put:[ shiftAction value:0 value:amount value ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8471
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8472
    (self openDialogInterface:#shiftDialogSpec withBindings:bindings) 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8473
    ifFalse:[ 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8474
        firstChange ~~ true ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8475
          imageEditView undo
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
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8478
    lastShiftUsedWrap := wrapHolder value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8479
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8480
    "Created: / 7.9.1998 / 18:16:07 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8481
    "Modified: / 7.9.1998 / 18:20:42 / cg"
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8484
doUnCropManual
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8485
    "let user specify borders and add them"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8486
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8487
    |bindings leftAmount topAmount rightAmount bottomAmount img|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8488
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8489
    bindings := IdentityDictionary new.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8490
    bindings at:#cropLeftAmount put:(leftAmount := 1 asValue).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8491
    bindings at:#cropRightAmount put:(rightAmount := 1 asValue).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8492
    bindings at:#cropTopAmount put:(topAmount := 1 asValue).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8493
    bindings at:#cropBottomAmount  put:(bottomAmount := 1 asValue).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8494
    bindings at:#cropBoxIsDialog   put:true.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8495
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8496
    (self openDialogInterface:#uncropSpec withBindings:bindings)
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8497
    ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8498
        leftAmount := leftAmount value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8499
        rightAmount := rightAmount value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8500
        topAmount := topAmount value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8501
        bottomAmount := bottomAmount value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8502
        img := imageEditView image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8503
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8504
        imageEditView
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8505
            makeBorderedImageX:leftAmount y:topAmount 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8506
            width:(img width + leftAmount + rightAmount)
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8507
            height:(img height + topAmount + bottomAmount).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8508
        self updateInfoLabel
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8511
    "Created: / 07-09-1998 / 18:16:07 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8512
    "Modified: / 19-02-2017 / 15:31:00 / cg"
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8515
doUndo
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8516
    "reverses last edit action"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8517
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8518
    imageEditView undo.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8519
    self updateImagePreView
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8522
makeInverse
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8523
    "inverts the pixels - for palettes, this leads to funny results"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8524
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8525
    self updateImageAfterDoing:#makeInverse.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8526
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8527
    "Modified: / 31-08-2017 / 12:16:07 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8528
    "Modified (comment): / 31-08-2017 / 13:51:28 / cg"
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8531
makeMonochromeImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8532
    "let user choose a threshold, then convert to monochrome"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8533
    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8534
    |image userInput thresholdBrighness|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8535
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8536
    image := imageEditView image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8537
    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8538
    Dialog modifyingBoxWith:[:box |
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8539
        |preview slider update thresholdValue|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8540
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8541
        thresholdValue := 0.5 asValue.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8542
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8543
        box enterField 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8544
            converter:(PrintConverter new initForNumber);
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8545
            model:thresholdValue.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8546
            
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8547
        box verticalPanel extent:1.0 @ 300.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8548
        
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8549
        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
  8550
        slider model:thresholdValue.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8551
        slider width:1.0; leftInset:4; rightInset:4.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8552
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8553
        box verticalPanel add:(preview := ImageView new).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8554
        preview extent:300 @300.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8555
        preview level:-1.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8556
        box verticalPanel horizontalLayout:#fitSpace.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8557
        
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8558
        update := 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8559
            [
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8560
                |s t|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8561
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8562
                t := thresholdValue value clampBetween:0 and:1.   
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8563
                preview image:((image asThresholdMonochromeImage:t)
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8564
                            magnifiedPreservingRatioTo:preview extent).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8565
            ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8566
        update value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8567
        box enterField acceptOnLostFocus:true.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8568
        box enterField acceptOnLeave:true.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8569
        thresholdValue onChangeEvaluate:update.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8570
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8571
    ] do:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8572
        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
  8573
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8574
    userInput isEmptyOrNil ifTrue:[^ self].
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8575
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8576
    thresholdBrighness := Number readFrom:userInput onError:nil.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8577
    thresholdBrighness isNil ifTrue:[^ self].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8578
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8579
    thresholdBrighness := thresholdBrighness clampBetween:0 and:1.
3478
1b4386fd1953 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3477
diff changeset
  8580
    
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8581
    imageEditView newImageWithUndo:(image asThresholdMonochromeImage:thresholdBrighness)
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8582
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8583
    "Created: / 24-08-2017 / 15:26:44 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8584
    "Modified: / 24-08-2017 / 17:54:21 / cg"
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8585
    "Modified (format): / 23-10-2017 / 10:42:52 / cg"
3476
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8588
makeNegative
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8589
    "negates current image by negating the color map"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8590
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8591
    self withExecuteCursorDo:[
3477
52202af265c2 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3476
diff changeset
  8592
        imageEditView makeNegative.
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8593
        self updateImage.
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8596
    "Created: / 31-08-2017 / 13:49:47 / cg"
3477
52202af265c2 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3476
diff changeset
  8597
    "Modified (comment): / 01-09-2017 / 10:27:37 / cg"
3476
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8600
thresholdGrayToDepth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8601
    self askForDepthThenDo:[:depth |
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8602
        self thresholdGrayToDepth:depth
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8605
    "Created: / 24-08-2017 / 17:49:23 / cg"
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8608
thresholdGrayToDepth:depth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8609
    self withExecuteCursorDo:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8610
        |newImage|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8611
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8612
        newImage := self image asThresholdGrayImageDepth:depth.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8613
        imageEditView newImageWithUndo:newImage.
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8616
    "Created: / 24-08-2017 / 17:49:30 / cg"
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8619
thresholdToDepth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8620
    self askForDepthThenDo:[:depth |
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8621
        self convertToDepth:depth dither:false
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8624
    "Created: / 30-08-2017 / 00:31:33 / cg"
3497
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
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8627
thresholdToNumberOfGrayColors
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8628
    |oldDepth numGrayColors suggestion grayImage userInput grayColors|
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8629
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8630
    oldDepth := self image depth.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8631
    grayImage := self image asGrayImageDepth:8.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8632
    
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8633
    suggestion := LastNumThresholdGrayColors notNil ifTrue:[
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8634
                    LastNumThresholdGrayColors
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8635
                  ] ifFalse:[
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8636
                    oldDepth > 8 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8637
                        ifTrue:[256] 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8638
                        ifFalse:[2 raisedTo:((oldDepth // 2 - 1) nextPowerOf2)]
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
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8641
    Dialog modifyingBoxWith:[:box |
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8642
        |preview slider update thresholdValue|
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8643
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8644
        thresholdValue := suggestion asValue.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8645
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8646
        box enterField 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8647
            converter:(PrintConverter new initForNumber);
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8648
            model:thresholdValue.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8649
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8650
        box verticalPanel extent:1.0 @ 300.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8651
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8652
        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
  8653
        slider model:thresholdValue.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8654
        slider width:1.0; leftInset:4; rightInset:4.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8655
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8656
        box verticalPanel add:(preview := ImageView new).
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8657
        preview extent:300 @300.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8658
        preview level:-1.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8659
        box verticalPanel horizontalLayout:#fitSpace.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8660
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8661
        update := 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8662
            [
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8663
                |numGrayColors depth s t tImage|
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8664
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8665
                numGrayColors := thresholdValue value clampBetween:2 and:256.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8666
                grayColors := Color grayColorVector:numGrayColors.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8667
                tImage := grayImage asNearestPaintImageDepth:(grayImage depth) colors:grayColors.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8668
                
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8669
                preview image:(tImage magnifiedPreservingRatioTo:preview extent).
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8670
            ].
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8671
        update value.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8672
        box enterField acceptOnLostFocus:true.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8673
        box enterField acceptOnLeave:true.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8674
        thresholdValue onChangeEvaluate:update.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8675
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8676
    ] do:[
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8677
        userInput := Dialog request:'Number of Gray Colors ?' initialAnswer:suggestion asString.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8678
    ].
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8679
    userInput isEmptyOrNil ifTrue:[^ self].
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
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8682
    numGrayColors := Number readFrom:userInput onError:nil.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8683
    numGrayColors isNil ifTrue:[^ self].
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8684
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8685
    grayColors := Color grayColorVector:numGrayColors.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8686
    imageEditView newImageWithUndo:(grayImage asNearestPaintImageDepth:(grayImage depth) colors:grayColors).
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8687
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8688
    "Created: / 23-10-2017 / 10:55:15 / cg"
3476
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8691
!ImageEditor methodsFor:'user actions-editing-colors'!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8692
3471
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8693
convertToDepth:depth dither:doDither
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8694
    |answer labels values 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8695
     ditherColors fixColors
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8696
     nGrey greyColorsAlready moreColors d|
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8697
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8698
    "/ no colormap above 12 bits!!
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8699
    depth > 12 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8700
        answer := #TrueColor.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8701
    ] ifFalse:[    
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8702
        doDither ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8703
            (depth >= 8) ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8704
                labels := #('Cancel' 'Use Browser Palette' 'Use Standard' 'Compute' 'TrueColor').
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8705
                values := #(nil UseBrowserPalette UseStandard Compute TrueColor).
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8706
            ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8707
                depth == 1 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8708
                    answer := #UseStandard
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8709
                ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8710
                    labels := #('Cancel' 'Use Standard' 'Compute' 'TrueColor').
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8711
                    values := #(nil UseStandard Compute TrueColor). 
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
            ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8714
        ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8715
            (depth >= 8) ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8716
                labels := #('Cancel' 'Use Browser Palette' 'Use Standard' 'TrueColor').
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8717
                values := #(nil UseBrowserPalette UseStandard TrueColor).
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8718
            ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8719
                answer := #UseStandard
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
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8724
    answer isNil ifTrue:[    
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8725
        answer := OptionBox
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8726
                  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
  8727
                  label:(resources string:'Dither how')
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8728
                  image:(YesNoBox iconBitmap)
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8729
                  buttonLabels:(resources array:labels)
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8730
                  values:values
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8731
                  default:#UseStandard
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8732
                  onCancel:nil.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8733
        answer isNil ifTrue:[^ self].
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
    
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8736
    (answer == #Compute) ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8737
        ditherColors :=
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8738
            Color
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8739
                best:(1 bitShift:depth) 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8740
                ditherColorsForImage:self image
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8741
    ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8742
        (answer == #UseBrowserPalette) ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8743
            ditherColors := Color colorCubeWithRed:6 green:6 blue:6. 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8744
        ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8745
            answer == #TrueColor ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8746
                depth == 6 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8747
                    fixColors := FixedPalette 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8748
                                    redShift:4 redMask:3
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8749
                                    greenShift:2 greenMask:3
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8750
                                    blueShift:0 blueMask:3
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8751
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8752
                depth == 9 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8753
                    fixColors := FixedPalette 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8754
                                    redShift:6 redMask:7
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8755
                                    greenShift:3 greenMask:7
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8756
                                    blueShift:0 blueMask:7
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8757
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8758
                depth == 12 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8759
                    fixColors := FixedPalette 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8760
                                    redShift:8 redMask:16r0F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8761
                                    greenShift:4 greenMask:16r0F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8762
                                    blueShift:0 blueMask:16r0F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8763
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8764
                depth == 15 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8765
                    fixColors := FixedPalette 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8766
                                    redShift:10 redMask:16r1F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8767
                                    greenShift:5 greenMask:16r1F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8768
                                    blueShift:0 blueMask:16r1F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8769
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8770
                depth == 16 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8771
                    fixColors := FixedPalette 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8772
                                    redShift:11 redMask:16r1F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8773
                                    greenShift:5 greenMask:16r3F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8774
                                    blueShift:0 blueMask:16r1F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8775
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8776
                depth == 18 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8777
                    fixColors := FixedPalette 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8778
                                    redShift:12 redMask:16r3F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8779
                                    greenShift:6 greenMask:16r3F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8780
                                    blueShift:0 blueMask:16r3F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8781
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8782
            ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8783
                depth == 1 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8784
                    ditherColors := { Color black . Color white }.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8785
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8786
                depth == 2 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8787
                    ditherColors := { Color black . Color darkGray  .Color lightGray . Color white }.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8788
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8789
                depth = 3 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8790
                    ditherColors := Color colorCubeWithRed:2 green:2 blue:2. 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8791
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8792
                depth = 4 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8793
                    ditherColors := Color vgaColors. 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8794
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8795
                depth = 5 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8796
                    ditherColors := Color colorCubeWithRed:3 green:4 blue:2.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8797
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8798
                depth = 6 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8799
                    ditherColors := Color colorCubeWithRed:4 green:4 blue:3.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8800
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8801
                depth = 7 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8802
                    ditherColors := Color colorCubeWithRed:5 green:5 blue:4. 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8803
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8804
                depth == 8 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8805
                    ditherColors := Color standardDitherColorsForDepth8. 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8806
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8807
                depth == 9 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8808
                    ditherColors := Color colorCubeWithRed:8 green:8 blue:8. 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8809
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8810
                ditherColors isNil ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8811
                    self error:'unsupported depth'.
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
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8814
                "/ add as many gray colors as possible.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8815
                nGrey := (2 raisedTo:depth) - ditherColors size.  
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8816
                nGrey > 0 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8817
                    nGrey := nGrey min:100.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8818
                    greyColorsAlready := ditherColors select:[:clr | clr isGreyColor].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8819
                    d := 1 / nGrey.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8820
                    moreColors := (1 to:nGrey-1) 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8821
                                    collect:[:i | Color brightness:(d * i)] 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8822
                                    thenReject:[:clr | greyColorsAlready includes:clr ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8823
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8824
                    ditherColors := ditherColors , moreColors.
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
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8830
    self withExecuteCursorDo:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8831
        |newImage|
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8832
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8833
        doDither ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8834
            depth == 1 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8835
                newImage := self image asErrorDitheredMonochromeImage
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8836
            ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8837
                answer == #TrueColor ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8838
                    newImage := self image asDitheredImageUsing:fixColors depth:depth.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8839
                ] ifFalse:[    
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8840
                    newImage := self image asDitheredImageUsing:ditherColors depth:depth.
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
            ]
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8843
        ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8844
            answer == #TrueColor ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8845
                self halt.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8846
            ] ifFalse:[    
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8847
                newImage := self image asNearestPaintImageDepth:depth colors:ditherColors
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
        ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8850
        imageEditView newImageWithUndo:newImage.
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
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8853
    "Created: / 30-08-2017 / 00:33:55 / cg"
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8854
    "Modified: / 30-08-2017 / 02:13:03 / cg"
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8855
!
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8856
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8857
makeInvertedBits
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8858
    "inverts the pixels - for palettes, this leads to funny results.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8859
     For others, this is the same as negating"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8860
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8861
    self updateImageAfterDoing:#makeInvertedBits.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8862
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8863
    "Created: / 31-08-2017 / 13:51:10 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  8864
! !
228524287573 intitial checkin
tz
parents:
diff changeset
  8865
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8866
!ImageEditor methodsFor:'user actions-image sequences'!
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8867
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8868
editEachImageFromSequence
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8869
    |seq|
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8870
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8871
    self checkModified ifFalse:[ ^ self ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8872
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8873
    imageEditView releaseUndos.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8874
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8875
    seq := self image imageSequence.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8876
    seq size > 10 ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8877
        (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
  8878
            ifFalse:[^ self].
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
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8881
    seq do:[:eachFrame |
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8882
        ImageEditor openOnImage:eachFrame image
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
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8885
    "Modified: / 21-10-2010 / 15:01:25 / cg"
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
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8888
gotoImageInSequence:index
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8889
    "display the next image in the image sequence"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8890
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8891
    |img seq frame listOfColors|
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8892
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8893
    imageEditView releaseUndos.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8894
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8895
    seq := self image imageSequence.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8896
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8897
    imageSeqNr := index.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8898
    frame := seq at:imageSeqNr.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8899
    imageEditView image:(frame image).
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8900
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8901
    (img := self image) notNil ifTrue:[          
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8902
        listOfColors := self listOfColors.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8903
        img colorMap notNil ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8904
            listOfColors contents:(img usedColors asSet asOrderedCollection).
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8905
        ] ifFalse:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8906
            listOfColors removeAll.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8907
        ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8908
        self findColorMapMode.     
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8909
        self updateLabelsAndHistory.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8910
        img := img onDevice:device.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8911
        imageEditView image:img.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8912
    ] ifFalse:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8913
        self updateForNoImage
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
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8916
    "Created: / 21-10-2010 / 14:22:11 / cg"
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
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8919
nextImageInSequence
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8920
    "display the next image in the image sequence"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8921
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8922
    |seq index|
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8923
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8924
    seq := self image imageSequence.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8925
    (index := imageSeqNr) isNil ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8926
        index := 1.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8927
    ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8928
    index := index + 1.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8929
    index > seq size ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8930
        self information:'Back to first image in sequence'.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8931
        index := 1.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8932
    ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8933
    self gotoImageInSequence:index.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8934
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8935
    "Modified: / 21-10-2010 / 14:24:11 / cg"
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
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8938
previousImageInSequence
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8939
    "display the previous image in the image sequence"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8940
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8941
    |seq index|
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8942
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8943
    seq := self image imageSequence.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8944
    (index := imageSeqNr) isNil ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8945
        index := 1.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8946
    ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8947
    index := index - 1.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8948
    index < 1 ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8949
        self information:'Wrap to last image in sequence'.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8950
        index := seq size.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8951
    ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8952
    self gotoImageInSequence:index.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8953
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8954
    "Created: / 21-10-2010 / 14:25:03 / cg"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8955
! !
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  8956
1715
9eebdb3802aa method category rename
Claus Gittinger <cg@exept.de>
parents: 1713
diff changeset
  8957
!ImageEditor methodsFor:'user actions-loading'!
400
228524287573 intitial checkin
tz
parents:
diff changeset
  8958
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  8959
doLoadFromClass
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  8960
    "opens a dialog for loading an image from class and a (resource-) selector"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  8961
1122
66e895f34b9b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1121
diff changeset
  8962
    |img|
66e895f34b9b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1121
diff changeset
  8963
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  8964
    self checkModified ifFalse:[ ^ self ].
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  8965
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  8966
    (imageEditView loadFromClass) notNil ifTrue:[
1380
9787c42843c2 allow display and extract from image sequences (gif anims)
Claus Gittinger <cg@exept.de>
parents: 1377
diff changeset
  8967
        imageSeqNr := nil.
1122
66e895f34b9b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1121
diff changeset
  8968
        (img := self image) notNil ifTrue: [
1900
41ba86fb1087 cleanup
Claus Gittinger <cg@exept.de>
parents: 1899
diff changeset
  8969
            self updateColorsFromImage:img.
574
8d82e8f101c1 undo disabling
tz
parents: 573
diff changeset
  8970
            self findColorMapMode.
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  8971
            self updateLabelsAndHistory.
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  8972
        ] ifFalse: [
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  8973
            self updateForNoImage
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  8974
        ].
449
dac8dc1f9dc8 if none image found for loading clear all
tz
parents: 444
diff changeset
  8975
    ]
400
228524287573 intitial checkin
tz
parents:
diff changeset
  8976
!
228524287573 intitial checkin
tz
parents:
diff changeset
  8977
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  8978
doLoadFromFile
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  8979
    "opens a dialog for loading an image from a file"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  8980
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  8981
    |img file filters title|
1353
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  8982
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  8983
    self checkModified ifFalse:[ ^ self ].
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  8984
1380
9787c42843c2 allow display and extract from image sequences (gif anims)
Claus Gittinger <cg@exept.de>
parents: 1377
diff changeset
  8985
    imageSeqNr := nil.
1353
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  8986
    img := self image.
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  8987
    img notNil ifTrue: [
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  8988
        file := img fileName
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  8989
    ].
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  8990
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  8991
    title := (resources string:'Load Image from File:').
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  8992
3066
a8e197ceebed Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 3050
diff changeset
  8993
    (UserPreferences current useNativeFileDialog
3100
d2310ff3cbab class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3080
diff changeset
  8994
     and:[Screen current isWindowsPlatform]) ifTrue:[
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  8995
        self withWaitCursorDo:[
3066
a8e197ceebed Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 3050
diff changeset
  8996
            file := Screen current
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  8997
                nativeFileDialogFor:(self window topView id)
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  8998
                save:false
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  8999
                title:title
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9000
                inDirectory:(file notNil ifTrue:[file asFilename directory pathName] ifFalse:[LastDirectory])
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9001
                initialAnswer:(file notNil ifTrue:[file asFilename baseName] ifFalse:['image.png'])
2827
c99d2c520b28 changed:
Claus Gittinger <cg@exept.de>
parents: 2826
diff changeset
  9002
                "/ flags:#( ENABLESIZING "HIDEREADONLY" EXPLORER NOCHANGEDIR)
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9003
                filter:
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9004
                  {
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9005
                          { (resources string:'Image Files') . '*.tif;*.png;*.gif;*.bmp;*.jpg'  } .
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9006
                          { (resources string:'All Files') . '*.*'  } 
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9007
                  }
2821
850aa6d37ea3 changed:
Claus Gittinger <cg@exept.de>
parents: 2820
diff changeset
  9008
                extension:nil
2827
c99d2c520b28 changed:
Claus Gittinger <cg@exept.de>
parents: 2826
diff changeset
  9009
                "blocking:false".
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9010
        ].
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9011
    ] ifFalse:[    
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9012
        filters := FileSelectionBrowser loadImageFileNameFilters.
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9013
        file notNil ifTrue:[
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9014
            file := FileSelectionBrowser
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9015
                        request:title
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9016
                        fileName:file
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9017
                        withFileFilters:filters.
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9018
        ] ifFalse:[
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9019
            file := FileSelectionBrowser
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9020
                        request:title
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9021
                        inDirectory:LastDirectory
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9022
                        withFileFilters:filters.
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9023
        ].
1353
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9024
    ].
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9025
1353
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9026
    file notNil ifTrue:[
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9027
        LastDirectory := file asFilename directoryName.
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9028
        self loadFromFile:file
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9029
    ]
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9030
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  9031
    "Modified: / 16-02-2017 / 10:53:41 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9032
!
228524287573 intitial checkin
tz
parents:
diff changeset
  9033
2796
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9034
doLoadFromURL
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9035
    "opens a dialog for loading an image from a URL"
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9036
2866
10f8ee0f23fe changed: #doLoadFromURL
Claus Gittinger <cg@exept.de>
parents: 2841
diff changeset
  9037
    |tempFile url response|
2796
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9038
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9039
    self checkModified ifFalse:[ ^ self ].
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9040
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9041
    url := Dialog 
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  9042
                request:(resources string:'Load Image from URL:')
2796
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9043
                initialAnswer:LastURL.
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9044
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9045
    url notEmptyOrNil ifTrue:[
3050
238571e2a33b class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3027
diff changeset
  9046
        HTTPInterface isNil ifTrue:[ Smalltalk loadPackage:'stx:goodies/communication'].
238571e2a33b class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3027
diff changeset
  9047
2796
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9048
        LastURL := url.
3027
50657c666fdc class: ImageEditor
Stefan Vogel <sv@exept.de>
parents: 3022
diff changeset
  9049
        tempFile := FileStream newTemporary close fileName.
2866
10f8ee0f23fe changed: #doLoadFromURL
Claus Gittinger <cg@exept.de>
parents: 2841
diff changeset
  9050
        self withWaitCursorDo:[
3492
f212578d1276 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3489
diff changeset
  9051
            |newURL|
f212578d1276 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3489
diff changeset
  9052
            
2866
10f8ee0f23fe changed: #doLoadFromURL
Claus Gittinger <cg@exept.de>
parents: 2841
diff changeset
  9053
            response := HTTPInterface get:url destinationFile:tempFile.
3492
f212578d1276 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3489
diff changeset
  9054
            response isMovedResponse ifTrue:[
f212578d1276 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3489
diff changeset
  9055
                newURL  := response location.
f212578d1276 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3489
diff changeset
  9056
                newURL ~= url ifTrue:[
f212578d1276 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3489
diff changeset
  9057
                    response := HTTPInterface get:newURL destinationFile:tempFile.
f212578d1276 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3489
diff changeset
  9058
                ].    
f212578d1276 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3489
diff changeset
  9059
            ].    
2866
10f8ee0f23fe changed: #doLoadFromURL
Claus Gittinger <cg@exept.de>
parents: 2841
diff changeset
  9060
        ].
10f8ee0f23fe changed: #doLoadFromURL
Claus Gittinger <cg@exept.de>
parents: 2841
diff changeset
  9061
        response isErrorResponse ifTrue:[
10f8ee0f23fe changed: #doLoadFromURL
Claus Gittinger <cg@exept.de>
parents: 2841
diff changeset
  9062
            Dialog warn:(resources string:'Could not load image ("%1")' with:response responseText).
10f8ee0f23fe changed: #doLoadFromURL
Claus Gittinger <cg@exept.de>
parents: 2841
diff changeset
  9063
        ] ifFalse:[
10f8ee0f23fe changed: #doLoadFromURL
Claus Gittinger <cg@exept.de>
parents: 2841
diff changeset
  9064
            self loadFromFile:tempFile.
10f8ee0f23fe changed: #doLoadFromURL
Claus Gittinger <cg@exept.de>
parents: 2841
diff changeset
  9065
        ].
2796
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9066
        tempFile delete
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9067
    ]
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9068
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9069
    "Created: / 20-09-2010 / 11:30:59 / cg"
3492
f212578d1276 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3489
diff changeset
  9070
    "Modified: / 13-09-2017 / 17:00:28 / cg"
2796
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9071
!
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9072
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9073
doNewImage
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9074
    "opens a dialog with choices of size and color map for creating a new image"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9075
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9076
    |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
  9077
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9078
    self checkModified ifFalse:[ ^ self ].
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9079
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9080
    defaultSize := (self class listOfDefaultSizes includes:'32x32') 
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9081
                        ifTrue:['32x32'] 
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9082
                        ifFalse:[self class listOfDefaultSizes first].
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9083
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9084
    dialogAspects  := IdentityDictionary new
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9085
        at:#listOfSizes         put: self class listOfDefaultSizes asValue;
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9086
        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
  9087
        at:#selectionOfSize     put: (LastSizeString ? defaultSize) asValue;
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9088
        at:#selectionOfColorMap put: (LastColormapMode ? self class namesOfColorMaps values asSortedCollection first) asValue;
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9089
        yourself.
228524287573 intitial checkin
tz
parents:
diff changeset
  9090
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9091
    (self openDialogInterface:#dialogSpecForNewImage withBindings:dialogAspects)
1383
179597c2abed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1381
diff changeset
  9092
    ifTrue:[
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9093
        szString := (dialogAspects at:#selectionOfSize) value.
1960
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  9094
        ext := self pointFromString:szString.
1962
9166ba3ce7c3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1961
diff changeset
  9095
        ext isNil ifTrue:[
9166ba3ce7c3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1961
diff changeset
  9096
            width := height := 32
9166ba3ce7c3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1961
diff changeset
  9097
        ] ifFalse:[
9166ba3ce7c3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1961
diff changeset
  9098
            width := ext x.
9166ba3ce7c3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1961
diff changeset
  9099
            height := ext y.
9166ba3ce7c3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1961
diff changeset
  9100
        ].
1960
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  9101
"/        width  := "128 min: "(Integer readFromString: (szString upTo: $x) onError:[32]).
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  9102
"/        height := "128 min: " (Integer readFromString: (szString copy reverse upTo: $x) reverse onError:[32]).
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9103
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9104
        cMapString := (dialogAspects at:#selectionOfColorMap) value.
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9105
        cMapMode   := self class namesOfColorMaps keyAtEqualValue:cMapString.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9106
        cMap       := self class listOfColorMaps at:cMapMode.
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9107
        depth := (cMapMode startsWith:'depth') 
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9108
                    ifTrue:[ Integer readFrom:(cMapMode copyFrom:'depth' size + 1) ]
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9109
                    ifFalse:[ 
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9110
                        (cMapMode startsWith:'masked') 
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9111
                            ifTrue:[ Integer readFrom:(cMapMode copyFrom:'masked' size + 1) ]
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9112
                            ifFalse:[ cMap size highBit-1 ]].
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9113
        imageClass := Image implementorForDepth:depth.
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9114
        image      := imageClass width: width height: height.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9115
        image bits:(ByteArray new:(image bytesPerRow*height)).
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9116
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  9117
        LastSizeString := szString.
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  9118
        LastColormapMode := cMapString.
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  9119
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9120
        (cMapMode startsWith:'mask') ifTrue:[
3125
9d5624af77ab Sending of Image>>#clearMaskedPixels moved to Image >> #asFormOnDevice:
Stefan Vogel <sv@exept.de>
parents: 3122
diff changeset
  9121
            image mask: (ImageMask width: width height: height depth: 1 fromArray: (ByteArray new: width*height)).
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9122
        ].
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9123
        depth == 32 ifTrue:[
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9124
            image photometric:#rgba
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9125
        ] ifFalse:[    
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9126
            image colorMap: cMap.
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9127
        ].
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9128
        (imageEditView image: image) notNil ifTrue:[
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9129
            self updateListOfColorsAndColormapMode.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9130
            self updateLabelsAndHistory.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9131
        ].
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9132
        image fillRectangleX:0 y:0 width:width height:height with:Color white.
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9133
    ]
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9134
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9135
    "Modified: / 13-09-2017 / 23:57:52 / cg"
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
  9136
!
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
  9137
2058
584f6f6bb171 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2054
diff changeset
  9138
doNewImageEditor
584f6f6bb171 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2054
diff changeset
  9139
    "opens a new image editor"
584f6f6bb171 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2054
diff changeset
  9140
584f6f6bb171 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2054
diff changeset
  9141
    ImageEditor open
584f6f6bb171 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2054
diff changeset
  9142
584f6f6bb171 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2054
diff changeset
  9143
    "Created: / 17-08-2006 / 09:03:14 / cg"
584f6f6bb171 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2054
diff changeset
  9144
!
584f6f6bb171 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2054
diff changeset
  9145
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  9146
doNewImageFromClipboard
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  9147
    |image|
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  9148
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9149
    self checkModified ifFalse:[ ^ self ].
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9150
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  9151
    image := imageEditView clipBoardImage.
3164
890b62a044be class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3157
diff changeset
  9152
    image isImageOrForm ifFalse:[
890b62a044be class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3157
diff changeset
  9153
        image := Image readFrom:(image asString) onError:nil.
890b62a044be class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3157
diff changeset
  9154
        image isNil ifTrue:[
890b62a044be class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3157
diff changeset
  9155
            Dialog warn:'Clipboard does not contain an image I can use/understand'.
890b62a044be class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3157
diff changeset
  9156
            ^ self.
890b62a044be class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3157
diff changeset
  9157
        ].
890b62a044be class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3157
diff changeset
  9158
    ].
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  9159
    
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9160
    imageEditView image:image.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9161
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9162
    image notNil ifTrue:[
1900
41ba86fb1087 cleanup
Claus Gittinger <cg@exept.de>
parents: 1899
diff changeset
  9163
        self updateColorsFromImage:image.
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  9164
        self findColorMapMode.
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  9165
        self updateLabelsAndHistory.
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  9166
    ]
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  9167
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  9168
    "Modified (format): / 08-10-2017 / 08:58:03 / cg"
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  9169
!
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  9170
3200
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9171
doNewMaskFromClipboard
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9172
    |mask image newImage|
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9173
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9174
    self checkModified ifFalse:[ ^ self ].
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9175
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  9176
    mask := imageEditView clipBoardImage.
3200
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9177
    mask isImageOrForm ifFalse:[
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9178
        mask := Image readFrom:(mask asString) onError:nil.
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9179
        mask isNil ifTrue:[
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9180
            Dialog warn:'Clipboard does not contain an image I can use/understand'.
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9181
            ^ self.
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9182
        ].
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9183
    ].
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  9184
    
3200
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9185
    (image:= imageEditView image) isNil ifTrue:[
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9186
        image := mask.
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9187
    ].
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9188
    mask extent ~= image extent ifTrue:[
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9189
        mask := imageEditView resizedImage:mask to:image extent.
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9190
    ].
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9191
    newImage := image copy.
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9192
    newImage mask:mask.
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9193
    imageEditView newImageWithUndo:newImage.
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9194
    self updateAfterImageChange.
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  9195
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  9196
    "Modified (format): / 08-10-2017 / 08:57:58 / cg"
3200
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9197
!
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9198
3422
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9199
grabFullScreenImage
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9200
    "grab all for editing"
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9201
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9202
    self grabScreenImageUsing:[ 
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9203
        Image fromScreen
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
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9206
    "Created: / 25-02-2017 / 12:41:29 / cg"
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9207
!
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9208
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
  9209
grabScreenImage
3422
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9210
    "let user choose an area and grab that area for editing"
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
  9211
2707
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9212
    self grabScreenImageUsing:[ 
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9213
        |r|
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9214
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9215
        [Screen current leftButtonPressed] whileTrue:[Delay waitForSeconds:0.05].
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9216
        r := Rectangle fromUser.
2708
c180af16b1b3 changed:
Claus Gittinger <cg@exept.de>
parents: 2707
diff changeset
  9217
        (r width == 0 or:[r height == 0]) ifTrue:[
c180af16b1b3 changed:
Claus Gittinger <cg@exept.de>
parents: 2707
diff changeset
  9218
            nil
c180af16b1b3 changed:
Claus Gittinger <cg@exept.de>
parents: 2707
diff changeset
  9219
        ] ifFalse:[
c180af16b1b3 changed:
Claus Gittinger <cg@exept.de>
parents: 2707
diff changeset
  9220
            lastGrabbedScreenArea := r.
c180af16b1b3 changed:
Claus Gittinger <cg@exept.de>
parents: 2707
diff changeset
  9221
            Image fromScreen:r
c180af16b1b3 changed:
Claus Gittinger <cg@exept.de>
parents: 2707
diff changeset
  9222
        ]
2707
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9223
    ].
3422
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9224
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9225
    "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
  9226
!
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9227
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9228
grabScreenImageFromLastArea
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9229
    "grab again from the previous area for editing"
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9230
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9231
    self grabScreenImageUsing:[ 
2708
c180af16b1b3 changed:
Claus Gittinger <cg@exept.de>
parents: 2707
diff changeset
  9232
        Image fromScreen:lastGrabbedScreenArea
2707
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9233
    ].
2701
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
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9236
grabScreenImageUsing:aBlock
3422
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9237
    "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
  9238
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9239
    self checkModified ifFalse:[ ^ self ].
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9240
990
4303f0064410 delay a second before grabbing screen image (to allow for redraws to happen)
Claus Gittinger <cg@exept.de>
parents: 986
diff changeset
  9241
    Processor 
4303f0064410 delay a second before grabbing screen image (to allow for redraws to happen)
Claus Gittinger <cg@exept.de>
parents: 986
diff changeset
  9242
        addTimedBlock:[
4303f0064410 delay a second before grabbing screen image (to allow for redraws to happen)
Claus Gittinger <cg@exept.de>
parents: 986
diff changeset
  9243
            |image d8image img|
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
  9244
1380
9787c42843c2 allow display and extract from image sequences (gif anims)
Claus Gittinger <cg@exept.de>
parents: 1377
diff changeset
  9245
            imageSeqNr := nil.
2701
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9246
            image := aBlock value.
2708
c180af16b1b3 changed:
Claus Gittinger <cg@exept.de>
parents: 2707
diff changeset
  9247
            image notNil ifTrue:[
1121
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9248
                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
  9249
false ifTrue:[
1687
f4543a556b89 Convert Object>>errorSignal -> Error
Stefan Vogel <sv@exept.de>
parents: 1682
diff changeset
  9250
                    Error handle:[:ex | |sig|
2996
a1090695cfbc class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 2992
diff changeset
  9251
                        (sig := ex creator) == HaltInterrupt ifTrue:[ex reject].
1122
66e895f34b9b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1121
diff changeset
  9252
                        sig == Signal noHandlerSignal ifTrue:[ex reject].
1121
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9253
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9254
                        self warn:'Could not convert to depth8 image (too many colors)'.
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9255
                        d8image := nil.
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9256
                    ] do:[
2420
14678b9fea60 grabScreenImage - do not convert to 8bit; leave as is initially
Claus Gittinger <cg@exept.de>
parents: 2375
diff changeset
  9257
                        d8image := Depth8Image fromImage:image photometric:#palette.
1121
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9258
                    ].
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9259
                    d8image notNil ifTrue:[
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9260
                        image := d8image
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9261
                    ]
2420
14678b9fea60 grabScreenImage - do not convert to 8bit; leave as is initially
Claus Gittinger <cg@exept.de>
parents: 2375
diff changeset
  9262
].
990
4303f0064410 delay a second before grabbing screen image (to allow for redraws to happen)
Claus Gittinger <cg@exept.de>
parents: 986
diff changeset
  9263
                ].
1121
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9264
                (imageEditView image:image) notNil ifTrue:[
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9265
                    self listOfColors contents:(image colorMap).
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9266
                    self findColorMapMode.
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9267
                    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
  9268
                ]
1121
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9269
             ] 
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9270
        ] 
990
4303f0064410 delay a second before grabbing screen image (to allow for redraws to happen)
Claus Gittinger <cg@exept.de>
parents: 986
diff changeset
  9271
        afterSeconds:1
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
  9272
3422
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9273
    "Created: / 29-07-1998 / 21:24:42 / cg"
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9274
    "Modified: / 16-11-2001 / 16:21:19 / cg"
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9275
    "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
  9276
!
9787c42843c2 allow display and extract from image sequences (gif anims)
Claus Gittinger <cg@exept.de>
parents: 1377
diff changeset
  9277
2701
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9278
grabWindowImage
3422
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9279
    "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
  9280
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9281
    self grabScreenImageUsing:[
3188
351c645c0921 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3180
diff changeset
  9282
        |v topView|
2701
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9283
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9284
        (v := Screen current viewFromUser) notNil ifTrue:[
3188
351c645c0921 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3180
diff changeset
  9285
            topView := v topView.
351c645c0921 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3180
diff changeset
  9286
            topView raise; makeFullyVisible.
2704
0791984eef02 changed: #grabWindowImage
Claus Gittinger <cg@exept.de>
parents: 2701
diff changeset
  9287
            Delay waitForSeconds:0.5.   "/ give view a chance to redraw itself.
3188
351c645c0921 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3180
diff changeset
  9288
            Image fromView:topView
2701
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9289
        ].
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9290
    ].
3422
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9291
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9292
    "Modified (comment): / 25-02-2017 / 12:41:20 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9293
! !
228524287573 intitial checkin
tz
parents:
diff changeset
  9294
1715
9eebdb3802aa method category rename
Claus Gittinger <cg@exept.de>
parents: 1713
diff changeset
  9295
!ImageEditor methodsFor:'user actions-saving'!
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9296
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9297
doPrint
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9298
    "prints current image on the current printer"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9299
1734
98ebea4111f9 waitCursor while printing
Claus Gittinger <cg@exept.de>
parents: 1728
diff changeset
  9300
    self withWaitCursorDo:[
98ebea4111f9 waitCursor while printing
Claus Gittinger <cg@exept.de>
parents: 1728
diff changeset
  9301
        imageEditView print
98ebea4111f9 waitCursor while printing
Claus Gittinger <cg@exept.de>
parents: 1728
diff changeset
  9302
    ]
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9303
!
228524287573 intitial checkin
tz
parents:
diff changeset
  9304
1613
1d4f11252d3b saveAsButtonImage added
ca
parents: 1611
diff changeset
  9305
doSaveButtonImageToFileAs
3375
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  9306
    "opens a dialog for saving current image to a file.
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  9307
     Saved as a button image (i.e. with a frame around)"
1613
1d4f11252d3b saveAsButtonImage added
ca
parents: 1611
diff changeset
  9308
1d4f11252d3b saveAsButtonImage added
ca
parents: 1611
diff changeset
  9309
    imageEditView saveButtonImageToFileAs.
1d4f11252d3b saveAsButtonImage added
ca
parents: 1611
diff changeset
  9310
    self updateLabelsAndHistory.
1d4f11252d3b saveAsButtonImage added
ca
parents: 1611
diff changeset
  9311
!
1d4f11252d3b saveAsButtonImage added
ca
parents: 1611
diff changeset
  9312
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9313
doSaveImageFile
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9314
    "saves current image to current file"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9315
1481
32f1fd9d0f15 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1480
diff changeset
  9316
    imageEditView save.
3379
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  9317
    self clearModifiedAndRememberImageSaved.
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9318
!
228524287573 intitial checkin
tz
parents:
diff changeset
  9319
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9320
doSaveImageFileAs
1922
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9321
    "opens a dialog for saving an image to a file"
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9322
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9323
    |img file filters|
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9324
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9325
    img := self image.
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9326
    img notNil ifTrue: [
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9327
        file := img fileName
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9328
    ].
3426
6d0987492205 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3425
diff changeset
  9329
    
2595
e1eeda9d1639 changed: #doSaveImageFileAs
Claus Gittinger <cg@exept.de>
parents: 2592
diff changeset
  9330
    filters := FileSelectionBrowser saveImageFileNameFilters.
1922
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9331
3066
a8e197ceebed Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 3050
diff changeset
  9332
    (UserPreferences current useNativeFileDialog
3100
d2310ff3cbab class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3080
diff changeset
  9333
     and:[Screen current isWindowsPlatform]) ifTrue:[
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9334
        self withWaitCursorDo:[
3379
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  9335
            "/ windows only
3066
a8e197ceebed Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 3050
diff changeset
  9336
            file := Screen current
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9337
                nativeFileDialogFor:(self window topView id)
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9338
                save:true
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  9339
                title:(resources string:'Save Image in File')
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9340
                inDirectory:(file notNil ifTrue:[file asFilename directory pathName] ifFalse:[LastDirectory])
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9341
                initialAnswer:(file notNil ifTrue:[file asFilename baseName] ifFalse:['image.png'])
2827
c99d2c520b28 changed:
Claus Gittinger <cg@exept.de>
parents: 2826
diff changeset
  9342
                "/ flags:#( ENABLESIZING "HIDEREADONLY" EXPLORER NOCHANGEDIR)
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9343
                filter:
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9344
                  {
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9345
                          { (resources string:'Image Files') . '*.tif;*.png;*.gif;*.bmp'  } .
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9346
                          { (resources string:'All Files') . '*.*'  } 
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9347
                  }
2821
850aa6d37ea3 changed:
Claus Gittinger <cg@exept.de>
parents: 2820
diff changeset
  9348
                extension:nil
2827
c99d2c520b28 changed:
Claus Gittinger <cg@exept.de>
parents: 2826
diff changeset
  9349
                "blocking:false".
2807
b89a09017a97 changed: #doSaveImageFileAs
Claus Gittinger <cg@exept.de>
parents: 2796
diff changeset
  9350
        ].
3425
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  9351
    ] ifFalse:[ 
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  9352
        img fileName isNil ifTrue:[
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  9353
            LastDirectory notNil ifTrue:[
3426
6d0987492205 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3425
diff changeset
  9354
                file isNil ifTrue:[
6d0987492205 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3425
diff changeset
  9355
                    file := 'image.png'.
6d0987492205 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3425
diff changeset
  9356
                ].
3425
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  9357
                file := LastDirectory asFilename construct:(file asFilename baseName).
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  9358
            ].    
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  9359
        ].    
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9360
        (FileSelectionBrowser isNil or:[DirectoryView isNil]) ifTrue:[
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9361
            file notNil ifTrue:[
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9362
                file := Dialog requestFileName:'Save Image To'
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9363
                            default:file
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9364
                            pattern:(filters first).
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9365
            ] ifFalse:[
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9366
                file := Dialog
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9367
                            requestFileName:'Save Image To'
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9368
                            default:'image.png'
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9369
                            pattern:(filters first)
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9370
                            fromDirectory:LastDirectory.
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9371
            ].
2807
b89a09017a97 changed: #doSaveImageFileAs
Claus Gittinger <cg@exept.de>
parents: 2796
diff changeset
  9372
        ] ifFalse:[
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9373
            file notNil ifTrue:[
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9374
                file := FileSelectionBrowser
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9375
                            request:'Save Image To'
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9376
                            fileName:file
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9377
                            withFileFilters:filters.
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9378
            ] ifFalse:[
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9379
                file := FileSelectionBrowser
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  9380
                            request:'Save Image in File:'
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9381
                            inDirectory:LastDirectory
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9382
                            withFileFilters:filters.
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9383
            ].
2807
b89a09017a97 changed: #doSaveImageFileAs
Claus Gittinger <cg@exept.de>
parents: 2796
diff changeset
  9384
        ].
1922
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9385
    ].
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9386
    file notNil ifTrue:[
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9387
        imageEditView saveImageFileAs:file.
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9388
        LastDirectory := file asFilename directoryName.
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9389
        self updateLabelsAndHistory.
3379
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  9390
        self clearModifiedAndRememberImageSavedAsFile:file.
1922
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9391
    ]
2807
b89a09017a97 changed: #doSaveImageFileAs
Claus Gittinger <cg@exept.de>
parents: 2796
diff changeset
  9392
3426
6d0987492205 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3425
diff changeset
  9393
    "Modified: / 27-02-2017 / 01:26:05 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9394
!
228524287573 intitial checkin
tz
parents:
diff changeset
  9395
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9396
doSaveImageMaskFileAs
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9397
    "opens a dialog for saving mask of current image to a file"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9398
1481
32f1fd9d0f15 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1480
diff changeset
  9399
    imageEditView saveImageMaskFileAs.
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9400
!
228524287573 intitial checkin
tz
parents:
diff changeset
  9401
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9402
doSaveMethod
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9403
    "saves the image in current class and selector"
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9404
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9405
    imageEditView saveMethod ifTrue:[
2006
ae6fe65e9f33 embedding as special editors
Claus Gittinger <cg@exept.de>
parents: 1998
diff changeset
  9406
        self updateLabelsAndHistory.
3379
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  9407
        self clearModifiedAndRememberImageSaved.
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9408
    ]
228524287573 intitial checkin
tz
parents:
diff changeset
  9409
!
228524287573 intitial checkin
tz
parents:
diff changeset
  9410
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9411
doSaveMethodAs
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9412
    "opens a dialog for saving current image on a class and a selector"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9413
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9414
    imageEditView saveMethodAs ifTrue:[
2006
ae6fe65e9f33 embedding as special editors
Claus Gittinger <cg@exept.de>
parents: 1998
diff changeset
  9415
        self updateLabelsAndHistory.
3379
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  9416
        self clearModifiedAndRememberImageSaved.
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9417
    ]
1309
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9418
!
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9419
3022
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9420
doShowPixelArrayLiteralString
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9421
    "opens a dialog showing a literal array-like storeString
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9422
     (sometimes useful to embed an image into source code)"
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9423
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9424
    |img|
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9425
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9426
    img := imageEditView image.
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9427
    TextBox openOn:img bits storeString
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9428
!
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9429
1309
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9430
doShowStoreString
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9431
    "opens a dialog showing the storeString
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9432
     (sometimes useful to embed an image into source code)"
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9433
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9434
    |img|
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9435
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9436
    img := imageEditView image.
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9437
    TextBox openOn:img storeString
1975
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
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9440
save
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9441
    "saves current image on current class and selector"
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9442
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9443
    self doSaveMethod
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9444
! !
228524287573 intitial checkin
tz
parents:
diff changeset
  9445
1715
9eebdb3802aa method category rename
Claus Gittinger <cg@exept.de>
parents: 1713
diff changeset
  9446
!ImageEditor methodsFor:'user actions-settings'!
1353
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9447
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9448
doChangeGridMagnification
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9449
    "change grid magnification"
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9450
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9451
    |box oldGridLimit newGridLimit|
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9452
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9453
    oldGridLimit := imageEditView class gridMagnificationLimit asPoint.
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9454
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9455
    box := EnterBox new.
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9456
    box title:(resources string:'Grid Magnification Limit:').
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9457
    box okText:(resources string:'OK').
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9458
    box abortText:(resources string:'Cancel').
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9459
    box initialText:(oldGridLimit x printString).
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9460
    box showAtPointer.
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9461
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9462
    (box accepted 
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9463
    and: [(newGridLimit := Number readFromString:(box contents) onError:[2]) notNil]
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9464
    ) ifTrue:[
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9465
        newGridLimit := (99 min: (2 max:newGridLimit)) asPoint.
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9466
        imageEditView class gridMagnificationLimit:newGridLimit.
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9467
        imageEditView invalidate
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9468
    ]
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9469
2192
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
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  9472
penWidth:n
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  9473
    imageEditView penWidth:n
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  9474
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  9475
    "Created: / 01-11-2007 / 23:47:48 / cg"
2375
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  9476
!
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  9477
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9478
penWidthHolderChanged
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9479
    imageEditView penWidth:(self penWidthHolder value)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9480
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9481
    "Created: / 15-02-2012 / 22:32:00 / cg"
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9482
!
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9483
2375
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  9484
spraySpot:n
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  9485
    imageEditView spraySpot:n
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  9486
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  9487
    "Created: / 01-11-2007 / 23:47:48 / cg"
2881
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
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9490
spraySpotHolderChanged
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9491
    imageEditView spraySpot:(self spraySpotHolder value)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9492
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9493
    "Created: / 15-02-2012 / 22:37:08 / cg"
1353
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9494
! !
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9495
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9496
!ImageEditor class methodsFor:'documentation'!
228524287573 intitial checkin
tz
parents:
diff changeset
  9497
228524287573 intitial checkin
tz
parents:
diff changeset
  9498
version
228524287573 intitial checkin
tz
parents:
diff changeset
  9499
    ^ '$Header$'
2590
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
9f2cb061d07f changed: #menuToolbar
Claus Gittinger <cg@exept.de>
parents: 2585
diff changeset
  9502
version_CVS
9f2cb061d07f changed: #menuToolbar
Claus Gittinger <cg@exept.de>
parents: 2585
diff changeset
  9503
    ^ '$Header$'
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9504
! !
2945
facf3c7b0e31 changed: #processEvent:
Claus Gittinger <cg@exept.de>
parents: 2932
diff changeset
  9505